Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
waitid(2)		      System Calls Manual		     waitid(2)

NAME
       waitid -	wait for child process to change state

SYNOPSIS
DESCRIPTION
       The  function  suspends	the  calling process until one of its children
       changes state. It records the current state of a	child in the structure
       pointed	to  by	infop.	 If a child process changed state prior	to the
       call to returns immediately.

       The idtype and id arguments are used to	specify	 which	children  will
       wait for.

       If  idtype  is  will  wait  for	the  child  with a process ID equal to
       (pid_t)pid.

       If idtypeis will	wait for any child with	a process group	 ID  equal  to
       (pid_t)pid.

       If idtypeis will	wait for any children and id is	ignored.

       The  options  argument is used to specify which state changes will wait
       for. It is formed by OR-ing together  one  or  more  of	the  following
       flags:

	      Wait for processes that have exited.

	      Status  will be returned for any child that has stopped upon re-
	      ceipt
				       of a signal.

	      Status will be returned for any child that was stopped  and  has
	      been
				       continued.

	      Return immediately if there  are	no children to wait for.

	      Keep the process whose status is returned	in
				       infop  in  a  waitable state. This will
				       not affect the state  of	 the  process;
				       the process may be waited for again af-
				       ter this	call completes.

       The infop argument must point to	a  structure.  If  returns  because  a
       child  process was found	that satisfied the conditions indicated	by the
       arguments idtype	and options, then the structure	pointed	 to  by	 infop
       will  be	 filled	 in  by	the system with	the status of the process. The
       si_signo	member will always be equal to

RETURN VALUE
       If returns due to the change of state of	one of its children, 0 is  re-
       turned. Otherwise, -1 is	returned and is	set to indicate	the error.

ERRORS
       The function will fail if:

	      [ECHILD]	     The  calling process has no existing unwaited-for
			     child processes.

	      [EINTR]	     The function was interrupted due to  the  receipt
			     of	a signal by the	calling	process.

	      [EINVAL]	     An	 invalid  value	 was specified for options, or
			     idtype and	id specify  an	invalid	 set  of  pro-
			     cesses.

APPLICATION USAGE
   Threads Considerations
       In  a  multi-threaded application, only the calling thread is suspended
       by

       will not	return until all threads in the	process	have reached  the  de-
       sired  state.   For  example, if	the or options are specified, will not
       return until all	threads	in the process	have  terminated,  stopped  or
       continued respectively.

SEE ALSO
       exec(2),	exit(2), wait(2), <sys/wait.h>.

CHANGE HISTORY
       First released in Issue 4, Version 2.

								     waitid(2)

NAME | SYNOPSIS | DESCRIPTION | RETURN VALUE | ERRORS | APPLICATION USAGE | SEE ALSO | CHANGE HISTORY

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=waitid&sektion=2&manpath=HP-UX+11.22>

home | help