NAME | SYNOPSIS | DESCRIPTION | RETURN VALUE | ERRORS | ATTRIBUTES | SEE ALSO
#include <pthread.h>int pthread_create(pthread_t *thread, const pthread_attr_t *attr, void *(*start_routine)void *, void *arg);
The pthread_create function creates a new thread, with attributes specified by attr, within the current actor. If attr is NULL, the default attributes are used. If the attributes specified by attr are modified later, the thread's attributes are not affected. Upon successful completion, pthread_create stores the identifier of the created thread in the location referenced by thread.
On creation, the new thread begins executing the function start_routine with arg as its sole argument. If that function returns, the effect is the same as if the thread had called pthread_exit using the return value of start_routine as the exit status.
If pthread_create fails, no new thread is created, and the contents of the location referenced by thread are undefined.
Upon successful completion, pthread_create returns a value of zero. Otherwise, an error code is returned. (NOTE: errno is not set.)
One or more attribute values specified by attr are invalid.
A new thread could not be created because PTHREAD_THREADS_MAX would have been exceeded. Insufficient memory or system resources are available to create a new thread.
See attributes(5) for descriptions of the following attributes:
ATTRIBUTE TYPE | ATTRIBUTE VALUE |
---|---|
Interface Stability | Evolving |
NAME | SYNOPSIS | DESCRIPTION | RETURN VALUE | ERRORS | ATTRIBUTES | SEE ALSO