[ Next Article | Previous Article | Book Contents | Library Home | Legal | Search ]
Base Operating System and Extensions Technical Reference, Volume 1

pthread_attr_getdetachstate or pthread_attr_setdetachstate Subroutines

Purpose

Sets and returns the value of the detachstate attribute of a thread attributes object.

Library

Threads Library (libpthreads.a)

Syntax

#include <pthread.h>

int pthread_attr_setdetachstate (pthread_attr_t *attr, int detachstate)
int pthread_attr_getdetachstate (const pthread_attr_t *attr, 
   int * detachstate);

Description

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 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.

Parameters

attr Specifies the thread attributes object.
detachstate Points to where the detachstate attribute value will be stored.

Return Values

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 detachstate if successful.

Error Codes

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.

Implementation Specifics

This subroutine is part of the Base Operating System (BOS) Runtime.

Related Information

The pthread_attr_setstackaddr, pthread_attr_setstacksize, pthread_create, pthread_attr_init subroutines, and pthread.h file.

Creating Threads in AIX Version 4.3 General Programming Concepts: Writing and Debugging Programs.

Threads Library Quick Reference in AIX Version 4.3 General Programming Concepts: Writing and Debugging Programs.


[ Next Article | Previous Article | Book Contents | Library Home | Legal | Search ]