Sun Microsystems, Inc.
spacerspacer
spacer   www.sun.com docs.sun.com | | |  
spacer
black dot
   
A   B   C   D   E   F   G   H   I   J   K   L   M   N   O   P   Q   R   S   T   U   V   W   X   Y   Z
    
 
Threads Library Functionspthread_attr_init(3THR)


NAME

 pthread_attr_init, pthread_attr_destroy - initialize or destroy threads attribute object

SYNOPSIS

 
cc -mt [ flag... ] file... -lpthread [ -lrt library... ]
#include <pthread.h>
int pthread_attr_init(pthread_attr_t *attr);
 int pthread_attr_destroy(pthread_attr_t *attr);

DESCRIPTION

 

The function pthread_attr_init() initializes a thread attributes object attr with the default value for all of the individual attributes used by a given implementation.

The resulting attribute object (possibly modified by setting individual attribute values), when used by pthread_create(), defines the attributes of the thread created. A single attributes object can be used in multiple simultaneous calls to pthread_create().

The pthread_attr_init() function initializes a thread attributes object ( attr) with the default value for each attribute as follows:

AttributeDefault ValueMeaning of Default
contentionscopePTHREAD_SCOPE_PROCESSresource competition within process
detachstatePTHREAD_CREATE_JOINABLEjoinable by other threads
stackaddrNULLstack allocated by system
stacksizeNULL1 or 2 megabyte
priority0priority of the thread
policySCHED_OTHERdetermined by system
inheritschedPTHREAD_EXPLICIT_SCHEDscheduling policy and parameters not inherited but explicitly defined by the attribute object
guardsizePAGESIZEsize of guard area for a thread's created stack

The pthread_attr_destroy() function destroys a thread attributes object ( attr), which cannot be reused until it is reinitialized. An implementation may cause pthread_attr_destroy() to set attr to an implementation-dependent invalid value. The behavior of using the attribute after it has been destroyed is undefined.

RETURN VALUES

 

Upon successful completion, pthread_attr_init() and pthread_attr_destroy() return a value of 0. Otherwise, an error number is returned to indicate the error.

ERRORS

 

The pthread_attr_init() function will fail if:

ENOMEM
Insufficient memory exists to initialize the thread attributes object.

The pthread_attr_destroy() function may fail if:

EINVAL
attr is invalid.

ATTRIBUTES

 

See attributes(5) for descriptions of the following attributes:

ATTRIBUTE TYPEATTRIBUTE VALUE
MT-LevelMT-Safe

SEE ALSO

 

sysconf(3C), pthread_attr_getdetachstate(3THR), pthread_attr_getguardsize(3THR), pthread_attr_getinheritsched(3THR), pthread_attr_getschedparam(3THR), pthread_attr_getschedpolicy(3THR), pthread_attr_getscope(3THR), pthread_attr_getstackaddr(3THR), pthread_attr_getstacksize(3THR), pthread_attr_setdetachstate(3THR), pthread_attr_setguardsize(3THR), pthread_attr_setinheritsched(3THR), pthread_attr_setschedparam(3THR), pthread_attr_setschedpolicy(3THR), pthread_attr_setscope(3THR), pthread_attr_setstackaddr(3THR), pthread_attr_setstacksize(3THR), pthread_create(3THR), attributes(5), standards(5)


SunOS 5.9Go To TopLast Changed 28 Apr 1998

 
      
      
Copyright 2002 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms.