Blocks the calling thread until a specified signal is received.
Threads Library (libpthreads.a)
#include </usr/include/dce/cma_sigwait.h>
int sigwait (set, sig) const sigset_t *set; int *sig;
The sigwait subroutine blocks the calling thread until one of the signal in the signal set set is received by the thread. Only asynchronous signals can be waited for.
The signal can be either sent directly to the thread, using the pthread_kill subroutine, or to the process. In that case, the signal will be delivered to exactly one thread that has not blocked the signal.
Concurrent use of sigaction and sigwait subroutines on the same signal is forbidden.
set | Specifies the set of signals to wait on. |
sig | Points to where the received signal number will be stored. |
Upon successful completion, the received signal number is returned via the sig parameter, and 0 is returned. Otherwise, an error code is returned.
The sigwait subroutine is unsuccessful if the following is true:
EINVAL | The set parameter contains an invalid or unsupported signal number. |
These subroutines are part of Base Operating System (BOS) Runtime.
The kill subroutine, pthread_kill subroutine, sigaction subroutine, sigthreadmask subroutine.
Signal Management in AIX Version 4.3 General Programming Concepts: Writing and Debugging Programs .