Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

pthread_join(3thr)

Name

pthread_join − Causes the calling thread to wait for the termination of a specified thread. 

Syntax

#include <pthread.h>

int pthread_join (thread, status)
pthread_t thread;
pthread_addr_t *status;

Arguments

thread Thread whose termination is awaited by the caller of this routine. 

status Status value of the terminating thread (in other words, when that thread calls pthread_exit.) 

Description

This routine causes the calling thread to wait for the termination of a specified thread.  A call to this routine returns after the specified thread has terminated. 

Any number of threads can call this routine. All threads are awakened when the specified thread terminates. 

If the current thread calls this routine, a deadlock can result (if it is not detected by the implementation). 

The results of this routine are unpredictable if the value for thread refers to a thread object that no longer exists. 

Return Values

If an error condition occurs, this routine returns -1 and sets errno to the corresponding error value.  Possible return values are as follows. 

Return Error Description
0 Successful completion. 
-1 [EINVAL] The value specified by thread is invalid. 
-1 [ESRCH] The value specified by thread does not refer to an existing thread. 
-1 [EDEADLK] A deadlock is detected. 

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