cc -mt [ flag... ] file... -lpthread [ library... ] #include <pthread.h>
int pthread_detach(pthread_t thread);
The pthread_detach() function is used to indicate to the implementation that storage for the thread thread can be reclaimed when that thread terminates. In other words, pthread_detach() dynamically resets the detachstate attribute of the thread to PTHREAD_CREATE_DETACHED. After a successful call to this function, it would not be necessary to reclaim the thread using pthread_join(). See pthread_join(3C). If thread has not terminated, pthread_detach() will not cause it to terminate. The effect of multiple pthread_detach() calls on the same target thread is unspecified.
If successful, pthread_detach() returns 0. Otherwise, an error number is returned to indicate the error.
The pthread_detach() function will fail if:
EINVAL The implementation has detected that the value specified by thread does not refer to a joinable thread.
ESRCH No thread could be found corresponding to that specified by the given thread ID.
See attributes(5) for descriptions of the following attributes:
|ATTRIBUTE TYPE||ATTRIBUTE VALUE|
pthread_create(3C), pthread_join(3C), attributes(5), standards(5)