sys/wait.h — declarations for waiting
#include <sys/wait.h>
The <sys/wait.h> header shall define the following symbolic constants for use with waitpid():
- 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():
- 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(), can also be used with waitid().
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);
None.
None.
None.
First released in Issue 3.
Included for alignment with the POSIX.1-1988 standard.
The wait3() function is removed.
The waitid() 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.
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.
return to top of page