Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

OpenSolaris 2009.06 - man page for pthread_attr_init (opensolaris section 3c)

pthread_attr_init(3C)					   Standard C Library Functions 				     pthread_attr_init(3C)

pthread_attr_init, pthread_attr_destroy - initialize or destroy threads attribute object
cc -mt [ flag... ] file... -lpthread [ library... ] #include <pthread.h> int pthread_attr_init(pthread_attr_t *attr); int pthread_attr_destroy(pthread_attr_t *attr);
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: Attribute Default Value Meaning of Default ----------------------------------------------------------------------------------- contentionscope PTHREAD_SCOPE_PROCESS resource competition within process detachstate PTHREAD_CREATE_JOINABLE joinable by other threads stackaddr NULL stack allocated by system stacksize 0 1 or 2 megabyte priority 0 priority of the thread policy SCHED_OTHER traditional time-sharing policy inheritsched PTHREAD_INHERIT_SCHED scheduling policy and parameters are inherited from the creating thread guardsize PAGESIZE size 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.
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.
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.
See attributes(5) for descriptions of the following attributes: +-----------------------------+-----------------------------+ | ATTRIBUTE TYPE | ATTRIBUTE VALUE | +-----------------------------+-----------------------------+ |Interface Stability |Committed | +-----------------------------+-----------------------------+ |MT-Level |MT-Safe | +-----------------------------+-----------------------------+ |Standard |See standards(5). | +-----------------------------+-----------------------------+
sysconf(3C), pthread_attr_getdetachstate(3C), pthread_attr_getguardsize(3C), pthread_attr_getinheritsched(3C), pthread_attr_getsched- param(3C), pthread_attr_getschedpolicy(3C), pthread_attr_getscope(3C), pthread_attr_getstackaddr(3C), pthread_attr_getstacksize(3C), pthread_attr_setdetachstate(3C), pthread_attr_setguardsize(3C), pthread_attr_setinheritsched(3C), pthread_attr_setschedparam(3C), pthread_attr_setschedpolicy(3C), pthread_attr_setscope(3C), pthread_attr_setstackaddr(3C), pthread_attr_setstacksize(3C), pthread_cre- ate(3C), attributes(5), standards(5) SunOS 5.11 1 Apr 2008 pthread_attr_init(3C)