Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ waitid(2) — UnixWare 2.01

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

exec(2)

exit(2)

fork(2)

intro(2)

pause(2)

ptrace(2)

sigaction(2)

siginfo(5)

signal(2)

wait(2)






       waitid(2)                                                  waitid(2)


       NAME
             waitid - wait for child process to change state

       SYNOPSIS
             #include <sys/types.h>
             #include <wait.h>
             int waitid(idtype_t idtype, id_t id, siginfo_t *infop, int options);

       DESCRIPTION
             waitid 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 waitid, waitid returns immediately.

             The idtype and id arguments specify which children waitid is
             to wait for.

                   If idtype is P_PID, waitid waits for the child with a
                   process ID equal to (pid_t) id.

                   If idtype is P_PGID, waitid waits for any child with a
                   process group ID equal to (pid_t) id.

                   If idtype is P_ALL, waitid waits for any children and id
                   is ignored.

             The options argument is used to specify which state changes
             waitid is to wait for.  It is formed by an OR of any of the
             following flags:

             WEXITED        Wait for process(es) to exit.

             WTRAPPED       Wait for traced process(es) to become trapped
                            or reach a breakpoint [see ptrace(2)].

             WSTOPPED       Wait for and return the process status of any
                            child that has stopped upon receipt of a
                            signal.

             WCONTINUED     Return the status for any child that was
                            stopped and has been continued.

             WNOHANG        Return immediately.





                           Copyright 1994 Novell, Inc.               Page 1













      waitid(2)                                                  waitid(2)


            WNOWAIT        Keep the process in a waitable state.  This
                           will not affect the state of the process on
                           subsequent waits.

            infop must point to a siginfo_t structure, as defined in
            siginfo(5).  siginfo_t is filled in by the system with the
            status of the process being waited for.

         Return Values
            If waitid returns due to a change of state of one of its
            children, it returns 0.  Otherwise, waitid returns -1 and sets
            errno to identify the error.

         Errors
            In the following conditions, waitid fails and sets errno to:

            EFAULT         infop points to an invalid address.

            EINTR          waitid was interrupted due to the receipt of a
                           signal by the calling process.

            EINVAL         0 or another invalid value was specified for
                           options.

            EINVAL         idtype and id specify an invalid set of
                           processes.

            ECHILD         The set of processes specified by idtype and id
                           does not contain any unwaited-for processes.

      REFERENCES
            exec(2), exit(2), fork(2), intro(2), pause(2), ptrace(2),
            sigaction(2), siginfo(5), signal(2), wait(2)

      NOTICES
         Considerations for Threads Programming
            While one thread is blocked, siblings might still be
            executing.










                          Copyright 1994 Novell, Inc.               Page 2








Typewritten Software • bear@typewritten.org • Edmonds, WA 98026