Приостановить вызывающий поток до приема сигнала
#include <unistd.h>int pause( void );
libc
Функция pause() приостанавливает вызывающий поток до доставки сигнала, действия которого включают в себя либо выполнение обработчика сигнала, либо завершение процесса.
Если действие завершает процесс, pause() не возвращает управление. Если действие направлено на выполнение обработчика сигнала, pause() возвращает управление после завершения обработчика.
Если возникла ошибка функция возвращает -1
, в errno записывается значение EINTR
. В противном случае функция не возвращает управление.
#include <stdio.h>#include <stdlib.h>#include <unistd.h>int main( void ){/* set an alarm to go off in 5 seconds */alarm( 5 );/** Wait until we receive a SIGALRM signal. However,* since we don't have a signal handler, any signal* will kill us.*/printf( "Hang around, waiting to die in 5 seconds\n" );pause();return (EXIT_SUCCESS);}
POSIX 1003.1
Предыдущий раздел: Описание API системной библиотеки