PTHREAD_ATTR(3) | Library Functions Manual | PTHREAD_ATTR(3) |
pthread_attr_getdetachstate
,
pthread_attr_setdetachstate
—
thread attribute operations
#include
<pthread.h>
int
pthread_attr_getdetachstate
(const
pthread_attr_t *attr, int *detachstate);
int
pthread_attr_setdetachstate
(pthread_attr_t
*attr, int detachstate);
Thread attributes are used to specify parameters to
pthread_create
().
One attribute object can be used in multiple calls to
pthread_create
(), with or without modifications
between calls.
One of these thread attributes governs the
creation state of the new thread. The new thread can be either created
"detached" or "joinable". The constants corresponding to
these states are PTHREAD_CREATE_DETACHED and PTHREAD_CREATE_JOINABLE
respectively. Creating a "joinable" thread allows the user to call
pthread_join
()
and
pthread_detach
(),
with the new thread's ID. A "detached" thread's ID cannot be used
with pthread_join
() and
pthread_detach
(). The default value for the
"detachstate" attribute is PTHREAD_CREATE_JOINABLE.
The
pthread_attr_setdetachstate
()
function sets the thread's "detachstate" attribute.
The "detachstate" attribute is set
within the attr argument, which can subsequently be
used as an argument to
pthread_create
().
If successful, these functions return 0. Otherwise, an error
number is returned to indicate the error.
pthread_attr_getdetachstate
(), on success, will copy
the value of the thread's "detachstate" attribute to the location
pointed to by the second function parameter.
pthread_attr_getdetachstate
() will fail
if:
EINVAL
]pthread_attr_setdetachstate
() will fail
if:
EINVAL
]pthread_create(3), pthread_join(3), pthread_attr_init(3), pthread_detach(3)
pthread_attr_setdetachstate
(),
pthread_attr_getdetachstate
() conform to
ISO/IEC 9945-1:1996 (“POSIX.1”)
December 31, 2007 | macOS 15.0 |