nightmaremail

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs

wait.3 (1685B)


      1 .TH wait 3
      2 .SH NAME
      3 wait \- check child process status
      4 .SH SYNTAX
      5 .B #include <wait.h>
      6 
      7 int \fBwait_nohang\fP(&\fIwstat\fR);
      8 .br
      9 int \fBwait_stop\fP(&\fIwstat\fR);
     10 .br
     11 int \fBwait_stopnohang\fP(&\fIwstat\fR);
     12 .br
     13 int \fBwait_pid\fP(&\fIwstat\fR,\fIpid\fR);
     14 
     15 int \fBwait_exitcode\fP(\fIwstat\fR);
     16 .br
     17 int \fBwait_crashed\fP(\fIwstat\fR);
     18 .br
     19 int \fBwait_stopped\fP(\fIwstat\fR);
     20 .br
     21 int \fBwait_stopsig\fP(\fIwstat\fR);
     22 
     23 int \fIpid\fR;
     24 .br
     25 int \fIwstat\fR;
     26 .SH DESCRIPTION
     27 .B wait_nohang
     28 looks for zombies (child processes that have exited).
     29 If it sees a zombie,
     30 it eliminates the zombie,
     31 puts the zombie's exit status into
     32 .IR wstat ,
     33 and returns the zombie's process ID.
     34 If there are several zombies,
     35 .B wait_nohang
     36 picks one.
     37 If there are children but no zombies,
     38 .B wait_nohang
     39 returns 0.
     40 If there are no children,
     41 .B wait_nohang
     42 returns -1,
     43 setting
     44 .B errno
     45 appropriately.
     46 
     47 .B wait_stopnohang
     48 is similar to
     49 .BR wait_nohang ,
     50 but it also looks for children that have stopped.
     51 
     52 .B wait_stop
     53 is similar to
     54 .BR wait_stopnohang ,
     55 but if there are children it will pause waiting for one of them
     56 to stop or exit.
     57 
     58 .B wait_pid
     59 waits for child process
     60 .I pid
     61 to exit.
     62 It eliminates any zombie that shows up in the meantime,
     63 discarding the exit status.
     64 
     65 .B wait_stop
     66 and
     67 .B wait_pid
     68 retry upon
     69 .BR error_intr .
     70 .SH "STATUS PARSING"
     71 If the child stopped,
     72 .B wait_stopped
     73 is nonzero;
     74 .B wait_stopsig
     75 is the signal that caused the child to stop.
     76 
     77 If the child exited by crashing,
     78 .B wait_stopped
     79 is zero;
     80 .B wait_crashed
     81 is nonzero.
     82 
     83 If the child exited normally,
     84 .B wait_stopped
     85 is zero;
     86 .B wait_crashed
     87 is zero;
     88 and
     89 .B wait_exitcode
     90 is the child's exit code.
     91 .SH "SEE ALSO"
     92 wait(2),
     93 error(3)