suspend execution of the calling process
#include <sys/types.h> #include <sys/wait.h> pid_t wait( int *stat_loc );
The wait() function suspends execution of the calling process until status information from one of its terminated child processes is available, or until the delivery of a signal whose action is either to terminate the process or execute a signal handler. If status information is available prior to the call to wait(), the return is immediate.
If the stat_loc variable is non-NULL, the terminating status of the child process is placed here. The macros listed below extract information from stat_loc. The stat_val argument to these macros is the integer value pointed to by stat_loc. At least the following macros are defined in <sys/wait.h>:
Only one of the WIFEXITED(stat_val) and WIFSIGNALED(stat_val) macros can evaluate to a nonzero value.
The process ID of the terminating child process, if successful. Upon delivery of a signal, wait() returns -1 and errno is set to EINTR.
See fork().
POSIX 1003.1
Safety: | |
---|---|
Interrupt handler | No |
Signal handler | Yes |
Thread | Yes |