Manual Page Result
0
Command: waitid | Section: 2 | Source: Digital UNIX | File: waitid.2.gz
waitid(2) System Calls Manual waitid(2)
NAME
waitid - Wait for child process to change state
SYNOPSIS
#include <sys/wait.h>
int waitid(
idtype_t idtype,
id_t id,
siginfo_t *infop,
int options);
STANDARDS
Interfaces documented on this reference page conform to industry stan-
dards as follows:
waitid(): XPG4-UNIX
Refer to the standards(5) reference page for more information about in-
dustry standards and associated tags.
PARAMETERS
Identifies the type of process to be affected. Used with the id para-
meter, it suspends execution for the specified child process. Speci-
fies either the process ID or process group ID of the child process.
Used with the idtype parameter, it suspends execution for the specified
process. Specifies a pointer to a siginfo_t structure. Specifies the
conditions that must occur before a wait operation is performed by the
waitid() function.
DESCRIPTION
The waitid() function holds a calling process until the state of a
child process changes. The current state of the child is recorded in a
structure pointed to by the infop parameter. If a child process
changed state prior to the call to the waitid() function, the waitid()
function returns immediately.
The idtype and id parameters determine which child process the waitid()
function is to act upon. If the idtype parameter is P_PID, the
waitid() function waits for the child with a process ID equal to
(pid_t)id. If the idtype parameter is P_PGID, the waitid() function
waits for any child with a process group ID equal to (pid_t)id. If the
idtype parameter is P_ALL, the waitid function waits for any child and
the id parameter is ignored.
The options parameter specifies the conditions that must occur before a
wait operation is performed by the waitid() function. To specify a
condition, use at least one of the following flags in a logical OR op-
eration: Return the status for any child that was stopped and has been
continued. Wait for processes to exit. Return immediately if no child
processes in the requested state are present. Keep the child process
whose status is returned in infop in a waitable state. Another wait
for that child may occur with the same results. Wait for and return
the process status of any child that has stopped upon receipt of a sig-
nal. [Digital] Wait for traced processes to become trapped or reach a
breakpoint (see ptrace(2)).
The infop parameter must point to a siginfo_t structure as defined in
siginfo(5). This structure contains the status explaining why a process
is in a wait state.
The waitid() function returns if a child process is found that satis-
fies the conditions defined by the idtype and options parameters. In
this case, the system fills in the structure pointed to by the infop
parameter with the process status. The system always sets the si_signo
structure member to SIGCHLD.
RETURN VALUE
If the waitid() function returns because the state of a child process
changes, it returns a value of zero (0). Otherwise, a value of -1 is
returned and errno is set to indicate the error.
ERRORS
The waitid() function sets errno to the specified values for the fol-
lowing conditions: The calling process has no unwaited-for child
processes. [Digital] The infop parameter points to an invalid ad-
dress. The waitid() function was interrupted due to the receipt of a
signal by the calling process. An invalid value was used with the op-
tions parameter, or the idtype and id parameters specify an invalid set
of processes.
RELATED INFORMATION
Functions: intro(2), exec(2), exit(2), fork(2), pause(3), ptrace(2),
sigaction(2), signal(2), wait(2)
Routines: pause(3)
Files: siginfo(5)
Standards: standards(5) delim off
waitid(2)