PTHREAD_DETACH(3)                               PTHREAD_DETACH(3)

NAME
       pthread_detach  -  put  a  running  thread in the detached
       state

SYNOPSIS
       #include <pthread.h>

       int pthread_detach(pthread_t th);

DESCRIPTION
       pthread_detach put the thread th in  the  detached  state.
       This  guarantees  that the memory resources consumed by th
       will be freed immediately  when  th  terminates.  However,
       this prevents other threads from synchronizing on the ter-
       mination of th using pthread_join.

       A thread can be created initially in the  detached  state,
       using  the detachstate attribute to pthread_create(3).  In
       contrast, pthread_detach applies to threads created in the
       joinable  state,  and which need to be put in the detached
       state later.

       After pthread_detach  completes,  subsequent  attempts  to
       perform pthread_join on th will fail. If another thread is
       already joining the thread th at the  time  pthread_detach
       is  called,  pthread_detach  does nothing and leaves th in
       the joinable state.

RETURN VALUE
       On success, 0 is returned. On error, a non-zero error code
       is returned.

ERRORS
       ESRCH  No  thread  could  be  found  corresponding to that
              specified by th

       EINVAL the thread th is already in the detached state

AUTHOR
       Xavier Leroy <Xavier.Leroy@inria.fr>

SEE ALSO
       pthread_create(3),  pthread_join(3),   pthread_attr_setde-
       tachstate(3)

                           LinuxThreads                         1