_LWP_WAIT(2)

NAME
_lwp_wait - wait for light-weight process termination

LIBRARY
libc

SYNOPSIS
#include <lwp.h>
int
_lwp_wait(lwpid_t wlwp, lwpid_t *rlwp);

DESCRIPTION
_lwp_wait() suspends execution of the calling LWP until the LWP specified by wlwp terminates. The specified LWP must not be detached. If wlwp is 0, then _lwp_wait() waits for any undetached LWP in the current process.

If rlwp is not NULL, then it points to the location where the LWP ID of the exited LWP is stored.

RETURN VALUES
Upon successful completion, _lwp_wait() returns a value of 0. Otherwise, an error code is returned to indicate the error.

ERRORS
_lwp_wait() will fail if:

[ESRCH]
    No undetached LWP can be found in the current process corresponding to that specified by wlwp.

[EDEADLK]
    The calling LWP is the only LWP in the process.

[EDEADLK]
    The LWP ID specified by wlwp is the LWP ID of the calling LWP.

[EINTR]
    _lwp_wait() was interrupted by a caught signal, or the signal did not have the SA_RESTART flag set.

SEE ALSO
_lwp_create(2), _lwp_exit(2)

HISTORY
The _lwp_wait() system call first appeared in NetBSD 2.0.