Provided by: glibc-doc_2.9-0ubuntu6_all


        pthread_create - create a new thread


        #include <pthread.h>
        int  pthread_create(pthread_t  *  thread, pthread_attr_t * attr, void *
        (*start_routine)(void *), void * arg);


        pthread_create creates a new thread of control  that  executes  concur-
        rently  with  the  calling  thread. The new thread applies the function
        start_routine passing it arg as first argument. The new  thread  termi-
        nates  either explicitly, by calling pthread_exit(3), or implicitly, by
        returning from the start_routine function. The latter case  is  equiva-
        lent  to calling pthread_exit(3) with the result returned by start_rou-
        tine as exit code.
        The attr argument specifies thread attributes to be applied to the  new
        thread.   See  pthread_attr_init(3)  for  a  complete  list  of  thread
        attributes. The attr argument can also be NULL, in which  case  default
        attributes  are used: the created thread is joinable (not detached) and
        has default (non real-time) scheduling policy.
        On success, the identifier of the newly created thread is stored in the
        location pointed by the thread argument, and a 0 is returned. On error,
        a non-zero error code is returned.


        EAGAIN not enough system resources to create  a  process  for  the  new
        EAGAIN more than PTHREAD_THREADS_MAX threads are already active.


        Xavier Leroy <>
        pthread_exit(3),           pthread_join(3),          pthread_detach(3),
                                  LinuxThreads                PTHREAD_CREATE(3)