PTHREADJOIN(3) BSD Library Functions Manual PTHREADJOIN(3)
NAME
pthreadjoin -- wait for thread termination
SYNOPSIS
##include <>
int
pthreadjoin(pthreadt thread, void **valueptr);
DESCRIPTION
The pthreadjoin() function suspends execution of the calling thread
until the target thread terminates unless the target thread has already
terminated.
On return from a successful pthreadjoin() call with a non-NUL valueptr
argument, the value passed to pthreadexit() by the terminating thread is
stored in the location referenced by valueptr. When a pthreadjoin()
returns successfully, the target thread has been terminated. The results
of multiple simultaneous calls to pthreadjoin() specifying the same tar-
get thread are undefined. If the thread calling pthreadjoin() is can-
celled, then the target thread is not detached.
RETURN VALUES
If successful, the pthreadjoin() function will return zero. Otherwise
an error number will be returned to indicate the error.
ERORS
pthreadjoin() will fail if:
[EINVAL] The implementation has detected that the value speci-
fied by thread does not refer to a joinable thread.
[ESRCH] No thread could be found corresponding to that speci-
fied by the given thread ID, thread.
[EDEADLK] A deadlock was detected or the value of thread speci-
fies the calling thread.
SEE ALSO
wait(2), pthreadcreate(3)
STANDARDS
pthreadjoin() conforms to ISO/IEC 9945-1:1996 (``POSIX.1'').
BSD April 4, 1996 BSD
|