Sets and returns the value of the detachstate attribute of a thread attributes object.
Threads Library (libpthreads.a)
#include <pthread.h> int pthread_attr_setdetachstate (attr, detachstate) pthread_attr_t *attr; int detachstate; int pthread_attr_getdetachstate (attr, detachstate) const pthread_attr_t *attr; int *detachstate;
The detachstate attribute controls whether the thread is created in a detached state. If the thread is created detached, then use of the ID of the newly created thread by the pthread_detach or pthread_join function is an error.
The pthread_attr_setdetachstate and pthread_attr_getdetachstate, respectively, set and get the detachstate attribute in the attr object.
The detachstate attribute can be set to either PTHREAD_CREATE_DETACHED or PTHREAD_CREATE_JOINABLE. A value of PTHREAD_CREATE_DETACHED causes all threads created with attr to be in the detached state, whereas using a value of PTHREAD_CREATE_JOINABLE causes all threads created with attr to be in the joinable state. The default value of the detachstate attribute is PTHREAD_CREATE_JOINABLE.
attr | Specifies the thread attributes object. |
detachstate | Points to where the detachstate attribute value will be stored. |
Upon successful completion, pthread_attr_setdetachstate and pthread_attr_getdetachstate return a value of 0. Otherwise, an error number is returned to indicate the error.
The pthread_attr_getdetachstate function stores the value of the detachstate attribute in the detachstate parameter if successful.
The pthread_attr_setdetachstate function will fail if:
EINVAL | The value of detachstate was not valid. |
The pthread_attr_getdetachstate and pthread_attr_setdetachstate functions will fail if:
EINVAL | The attribute parameter is invalid. |
These functions will not return an error code of EINTR.
The pthread_attr_setstackaddr Subroutine, pthread_attr_setstacksize Subroutine, pthread_create Subroutine, and pthread_attr_init Subroutine.
The pthread.h file in AIX 5L Version 5.2 Files Reference
Creating Threads and Threads Library Quick Referencein AIX 5L Version 5.2 General Programming Concepts: Writing and Debugging Programs.