NAME
sys/wait.h —
declarations for waiting
SYNOPSIS
#include
<sys/wait.h>
DESCRIPTION
The <sys/wait.h> header shall define the following symbolic constants for use with waitpid(3):
- WCONTINUED
- [XSI] Report status of continued child process.
- WNOHANG
- Do not hang if no status is available; return immediately.
- WUNTRACED
- Report status of stopped child process.
The <sys/wait.h> header shall define the following macros for analysis of process status values:
- WCOREDUMP
- True if WIFSIGNALED is true and creation of a core image was attempted.
- Note:
- The use of the word "attempted" here means that the process terminated abnormally with additional actions (see SIG_DFL in XSH 2.4.3 Signal Actions ). A core image might or might not have been produced. Some implementations do not set this bit if a core image was not produced, but this is not a requirement.
- WEXITSTATUS
- Return exit status.
- WIFCONTINUED
- [XSI] True if child has been continued.
- WIFEXITED
- True if child exited normally.
- WIFSIGNALED
- True if child exited due to uncaught signal.
- WIFSTOPPED
- True if child stopped due to uncaught signal.
- WSTOPSIG
- Return signal number that caused process to stop.
- WTERMSIG
- Return signal number that caused process to terminate.
The <sys/wait.h> header shall define the following symbolic constants as possible values for the options argument to waitid(3):
- WEXITED
- Wait for processes that have terminated.
- WNOWAIT
- Keep the process whose status is returned in infop in a waitable state.
- WSTOPPED
- Status is returned for any child that has stopped upon receipt of a signal.
The [XSI] WCONTINUED and WNOHANG constants, described above for waitpid(3), can also be used with waitid(3).
The type idtype_t shall be defined as an enumeration type whose possible values shall include at least the following: P_ALL P_PGID P_PID
The <sys/wait.h> header shall define the id_t and pid_t types as described in <sys/types.h>.
The <sys/wait.h> header shall define the siginfo_t type and the sigval union as described in <signal.h>.
Inclusion of the <sys/wait.h> header may also make visible all symbols from <signal.h>.
The following shall be declared as functions and may also be defined as macros. Function prototypes shall be provided.
pid_t wait(int *); int waitid(idtype_t, id_t, siginfo_t *, int); pid_t waitpid(pid_t, int *, int);
APPLICATION USAGE
None.
RATIONALE
None.
FUTURE DIRECTIONS
None.
SEE ALSO
CHANGE HISTORY
First released in Issue 3.
Included for alignment with the POSIX.1-1988 standard.
Issue 6
The wait3 () function is removed.
Issue 7
The waitid(3) function and symbolic constants for its options argument are moved to the Base.
The description of the WNOHANG constant is clarified.
The requirement for <sys/wait.h> to define the rusage structure as described in <sys/resource.h> is removed, and <sys/wait.h> is no longer allowed to make visible all symbols from <sys/resource.h>.
POSIX.1-2008, Technical Corrigendum 2, XBD/TC2-2008/0082 [579] and XBD/TC2-2008/0083 [564] are applied.
Issue 8
Austin Group Defect 1141 is applied, adding WCOREDUMP and changing the description of WIFSTOPPED.
Austin Group Defect 1332 is applied, changing the description of WEXITED.