1.4 KiB
PR_JoinThread
Blocks the calling thread until a specified thread terminates.
Syntax
#include <prthread.h>
PRStatus PR_JoinThread(PRThread *thread);
Parameter
{ref}PR_JoinThread has the following parameter:
thread-
A valid identifier for the thread that is to be joined.
Returns
The function returns one of the following values:
- If successful,
PR_SUCCESS - If unsuccessful--for example, if no joinable thread can be found that
corresponds to the specified target thread, or if the target thread
is unjoinable--
PR_FAILURE.
Description
{ref}PR_JoinThread is used to synchronize the termination of a thread.
The function is synchronous in that it blocks the calling thread until
the target thread is in a joinable state. {ref}PR_JoinThread returns to
the caller only after the target thread returns from its root function.
{ref}PR_JoinThread must not be called until after {ref}PR_CreateThread has
returned. If {ref}PR_JoinThread is not called on the same thread as
{ref}PR_CreateThread, then it is the caller's responsibility to ensure
that {ref}PR_CreateThread has completed.
Several threads cannot wait for the same thread to complete. One of the
calling threads operates successfully, and the others terminate with the
error PR_FAILURE.
The calling thread is not blocked if the target thread has already terminated.
{ref}PR_JoinThread is interruptible.