wait man page on SmartOS

Man page or keyword search:  
man Server   16655 pages
apropos Keyword Search (all sections)
Output format
SmartOS logo
[printable version]

WAIT(3C)							      WAIT(3C)

NAME
       wait - wait for child process to stop or terminate

SYNOPSIS
       #include <sys/types.h>
       #include <sys/wait.h>

       pid_t wait(int *stat_loc);

DESCRIPTION
       The  wait() function will suspend execution of the calling thread until
       status information for one of its terminated child processes is	avail‐
       able, or until delivery of a signal whose action is either to execute a
       signal-catching function or to terminate the process. If more than  one
       thread  is suspended in wait(), waitpid(3C), or waitid(2) awaiting ter‐
       mination of the same  process,  exactly	one  thread  will  return  the
       process status at the time of the target process termination. If status
       information is available prior to the call to wait(),  return  will  be
       immediate.

       If  wait()  returns because the status of a child process is available,
       it returns the process ID of the child process. If the calling  process
       specified  a  non-zero  value  for  stat_loc,  the  status of the child
       process is stored in the location pointed to by stat_loc.  That	status
       can  be evaluated with the macros described on the wait.h(3HEAD) manual
       page.

       In the following, status is the object pointed to by stat_loc:

	   o	  If the child process terminated due to an _exit() call,  the
		  low  order  8	 bits of status will be 0 and the high order 8
		  bits will contain the low order 7 bits of the argument  that
		  the child process passed to _exit(); see exit(2).

	   o	  If  the  child  process terminated due to a signal, the high
		  order 8 bits of status will be 0 and	the  low  order	 7bits
		  will contain the number of the signal that caused the termi‐
		  nation. In addition, if  WCOREFLG is	set,  a	 "core	image"
		  will	 have	been	produced;   see	  signal.h(3HEAD)  and
		  wait.h(3HEAD).

       One instance of a SIGCHLD signal is queued for each child process whose
       status  has  changed.  If  wait() returns because the status of a child
       process is available, any pending SIGCHLD signal	 associated  with  the
       process	ID  of	that  child  process  is  discarded. Any other pending
       SIGCHLD signals remain pending.

       If the calling process has SA_NOCLDWAIT	set  or	 has  SIGCHLD  set  to
       SIG_IGN, and the process has no unwaited children that were transformed
       into zombie processes, it will block until all of its  children	termi‐
       nate, and wait() will fail and set errno to ECHILD.

       If  a parent process terminates without waiting for its child processes
       to terminate, the parent process ID of each child process is set to  1,
       with  the  initialization  process  inheriting the child processes; see
       Intro(2).

RETURN VALUES
       When wait() returns due to a terminated child process, the  process  ID
       of  the	child  is  returned  to	 the calling process. Otherwise, −1 is
       returned and errno is set to indicate the error.

ERRORS
       The wait() function will fail if:

       ECHILD
		 The calling process has no existing unwaited-for  child  pro‐
		 cesses.

       EINTR
		 The function was interrupted by a signal.

USAGE
       Since  wait()  blocks  on a stopped child, a calling process wanting to
       see the return results  of  such	 a  call  should  use  waitpid(3C)  or
       waitid(2)  instead  of  wait(). The wait() function is implemented as a
       call to waitpid(-1, stat_loc, 0).

ATTRIBUTES
       See attributes(5) for descriptions of the following attributes:

       ┌────────────────────┬───────────────────┐
       │  ATTRIBUTE TYPE    │  ATTRIBUTE VALUE	│
       ├────────────────────┼───────────────────┤
       │Interface Stability │ Standard		│
       ├────────────────────┼───────────────────┤
       │MT-Level	    │ Async-Signal-Safe │
       └────────────────────┴───────────────────┘

SEE ALSO
       Intro(2), exec(2), exit(2), fork(2), pause(2),  waitid(2),  ptrace(3C),
       signal(3C), signal.h(3HEAD), waitpid(3C), wait.h(3HEAD), attributes(5)

				  Jun 9, 2004			      WAIT(3C)
[top]

List of man pages available for SmartOS

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net