Ожидать сигнал
#include <signal.h>int sigwait( const sigset_t *set,int *sig );
sigset_t
, который определяет ожидаемые сигналы.libc
Функция sigwait() определяет перечень ожидаемых сигналов set, автоматически очищает его из набора ожидающих сигналов процесса и возвращает его номер в sig. Если в очереди присутствует несколько ожидаемых сигналов, лишь первый из них приведет к разблокированию sigwait(), остальные останутся в очереди. Если сигналов, удовлетворяющих set, в очереди нет, поток блокируется до их появления.
Сигналы, определенные в set должны быть блокированы перед вызовом sigwait(); в противном случае поведение не определено. Эффект от sigwait() при обработке сигналов не указывается.
Если один или несколько потоков используют sigwait() для ожидания одного и того же сигнала, только один поток получит управление – какой именно неизвестно.
POSIX 1003.1
pause(), pthread_sigmask(), sigaction(), sigpending(), sigsuspend()
Предыдущий раздел: Описание API системной библиотеки