pthread_create
PTHREAD_CREATE(3) PTHREAD_CREATE(3)
NAME
pthread_create - create a new thread
SYNOPSIS
#include <pthread.h>
int pthread_create(pthread_t * thread, pthread_attr_t * attr, void *
(*start_routine)(void *), void * arg);
DESCRIPTION
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.
RETURN VALUE
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.
ERRORS
EAGAIN not enough system resources to create a process for the new
thread.
EAGAIN more than PTHREAD_THREADS_MAX threads are already active.
AUTHOR
Xavier Leroy <Xavier.Leroy@inria.fr>
SEE ALSO
pthread_exit(3), pthread_join(3), pthread_detach(3),
pthread_attr_init(3).
LinuxThreads PTHREAD_CREATE(3)