Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

pthread_attr_init(3) [netbsd man page]

PTHREAD_ATTR(3) 					   BSD Library Functions Manual 					   PTHREAD_ATTR(3)

NAME
pthread_attr_init, pthread_attr_destroy -- thread attribute operations LIBRARY
POSIX Threads Library (libpthread, -lpthread) SYNOPSIS
#include <pthread.h> int pthread_attr_init(pthread_attr_t *attr); int pthread_attr_destroy(pthread_attr_t *attr); DESCRIPTION
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 the calls. The pthread_attr_t type is an opaque representation of the thread attributes; any access to the object other than via the described pthread_attr_*() functions may result in undefined behavior. The pthread_attr_init() function initializes attr with the default thread attributes used in the implementation. Depending on the implemen- tation, undefined behavior may follow if an uninitialized thread attribute object is used with some of the thread attribute functions. It is therefore a good practice to always use pthread_attr_init(), even if this might be unnecessary. Undefined behavior may also follow if an already initialized attr is used with pthread_attr_init(). When the attribute object is no longer needed, it should be destroyed by using pthread_attr_destroy(). The function has no effect on threads that were created by using a given attribute object. A destroyed attr can be reinitialized using pthread_attr_init(), but all other actions with the destroyed object are unspecified. The following standard thread attribute functions are available: Function Description pthread_attr_getdetachstate(3) thread detach state pthread_attr_getguardsize(3) thread guard size pthread_attr_getinheritsched(3) inherit scheduler attribute pthread_attr_getschedparam(3) thread scheduling parameter pthread_attr_getschedpolicy(3) thread scheduling policy pthread_attr_getscope(3) thread contention scope pthread_attr_getstack(3) thread stack pthread_attr_getstacksize(3) thread stack size pthread_attr_getstackaddr(3) thread stack address Each listed pthread_attr_get*() function contains a pthread_attr_set*() counterpart. In addition, the following NetBSD specific extensions are available: Function Description pthread_attr_get_np(3) attributes of a running thread pthread_attr_getname_np(3) descriptive name of an attribute RETURN VALUES
If successful, these functions return 0. Otherwise, an error number is returned to indicate the error. ERRORS
No errors are defined for pthread_attr_init() and pthread_attr_destroy(). SEE ALSO
pthread_create(3), pthread_join(3) STANDARDS
Both pthread_attr_init() and pthread_attr_destroy() conform to IEEE Std 1003.1-2001 (``POSIX.1''). BSD
July 9, 2010 BSD

Check Out this Related Man Page

PTHREAD_ATTR(3) 					   BSD Library Functions Manual 					   PTHREAD_ATTR(3)

NAME
pthread_attr_init, pthread_attr_destroy, pthread_attr_setstack, pthread_attr_getstack, pthread_attr_setguardsize, pthread_attr_getguardsize -- thread attribute operations SYNOPSIS
#include <pthread.h> int pthread_attr_init(pthread_attr_t *attr); int pthread_attr_destroy(pthread_attr_t *attr); int pthread_attr_setstack(pthread_attr_t *attr, void *stackaddr, size_t stacksize); int pthread_attr_getstack(const pthread_attr_t * restrict attr, void ** restrict stackaddr, size_t * restrict stacksize); int pthread_attr_setstacksize(pthread_attr_t *attr, size_t stacksize); int pthread_attr_getstacksize(const pthread_attr_t *attr, size_t *stacksize); int pthread_attr_setguardsize(pthread_attr_t *attr, size_t guardsize); int pthread_attr_getguardsize(const pthread_attr_t *attr, size_t *guardsize); int pthread_attr_setstackaddr(pthread_attr_t *attr, void *stackaddr); int pthread_attr_getstackaddr(const pthread_attr_t *attr, void **stackaddr); int pthread_attr_setdetachstate(pthread_attr_t *attr, int detachstate); int pthread_attr_getdetachstate(const pthread_attr_t *attr, int *detachstate); int pthread_attr_setinheritsched(pthread_attr_t *attr, int inheritsched); int pthread_attr_getinheritsched(const pthread_attr_t *attr, int *inheritsched); int pthread_attr_setschedparam(pthread_attr_t *attr, const struct sched_param *param); int pthread_attr_getschedparam(const pthread_attr_t *attr, struct sched_param *param); int pthread_attr_setschedpolicy(pthread_attr_t *attr, int policy); int pthread_attr_getschedpolicy(const pthread_attr_t *attr, int *policy); int pthread_attr_setscope(pthread_attr_t *attr, int contentionscope); int pthread_attr_getscope(const pthread_attr_t *attr, int *contentionscope); DESCRIPTION
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. The pthread_attr_init() function initializes attr with all the default thread attributes. The pthread_attr_destroy() function destroys attr. The pthread_attr_set*() functions set the attribute that corresponds to each function name. The pthread_attr_get*() functions copy the value of the attribute that corresponds to each function name to the location pointed to by the second function parameter. RETURN VALUES
If successful, these functions return 0. Otherwise, an error number is returned to indicate the error. ERRORS
The pthread_attr_init() function will fail if: [ENOMEM] Out of memory. The pthread_attr_destroy() function will fail if: [EINVAL] Invalid value for attr. SEE ALSO
pthread_attr_affinity_np(3), pthread_attr_get_np(3), pthread_create(3) STANDARDS
pthread_attr_init(), pthread_attr_destroy(), pthread_attr_setstacksize(), pthread_attr_getstacksize(), pthread_attr_setstackaddr(), pthread_attr_getstackaddr(), pthread_attr_setdetachstate(), and pthread_attr_getdetachstate() functions conform to ISO/IEC 9945-1:1996 (``POSIX.1'') The pthread_attr_setinheritsched(), pthread_attr_getinheritsched(), pthread_attr_setschedparam(), pthread_attr_getschedparam(), pthread_attr_setschedpolicy(), pthread_attr_getschedpolicy(), pthread_attr_setscope(), and pthread_attr_getscope() functions conform to Version 2 of the Single UNIX Specification (``SUSv2'') BSD
January 8, 2010 BSD
Man Page