man(1) Manual page archive

     WAIT(2)                                                   WAIT(2)

          wait - wait for a process to exit

          int wait(Waitmsg *w)

          Wait causes a process to wait for any child process (see
          fork(2)) to exit.  It returns the pid of a child that has
          exited and fills in w with more information about the child.
          W points to a Waitmsg, which has this structure:

               struct Waitmsg
                     char pid[12];         /* of loved one */
                     char time[3*12];      /* of loved one & descendants */
                     char msg[ERRLEN];
               } Waitmsg;

          Pid is the child's pid.  The time array contains the time
          the child and its descendants spent in user code, the time
          spent in system calls, and the child's elapsed real time,
          all in units of milliseconds.  All integers in a Waitmsg are
          formatted as right-justified textual numbers in 11-byte
          fields followed by a blank. Msg contains the message that
          the child specified in exits(2). For a normal exit, msg[0]
          is zero, otherwise msg is prefixed by the process name, a
          blank, the process id, and a colon.

          If there are no more children to wait for, wait returns
          immediately, with return value -1.

          fork(2), exits(2)

          Sets errstr.