pthread_attr(3)

NAME

pthread_attr_init, pthread_attr_destroy,
pthread_attr_setstack,
pthread_attr_getstack, pthread_attr_setstacksize, pthread_attr_getstacksize, pthread_attr_setguardsize, pthread_attr_getguardsize, pthread_attr_setstackaddr, pthread_attr_getstackaddr, pthread_attr_setdetachstate, pthread_attr_getdetachstate, pthread_attr_setinheritsched, pthread_attr_getinheritsched, pthread_attr_setschedparam, pthread_attr_getschedparam, pthread_attr_setschedpolicy, pthread_attr_getschedpolicy, pthread_attr_setscope,
pthread_attr_getscope
- thread attribute operations

LIBRARY

library ``libc_r'' library ``libpthread'' library ``libthr''

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 at
tribute 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 er
ror 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.

The pthread_attr_setstacksize() and pthread_attr_setstack()
functions
will fail if:
[EINVAL] stacksize is less than PTHREAD_STACK_MIN.
The pthread_attr_setdetachstate() function will fail if:
[EINVAL] Invalid value for detachstate.
The pthread_attr_setinheritsched() function will fail if:
[EINVAL] Invalid value for attr.
The pthread_attr_setschedparam() function will fail if:
[EINVAL] Invalid value for attr.
[ENOTSUP] Invalid value for param.
The pthread_attr_setschedpolicy() function will fail if:
[EINVAL] Invalid value for attr.
[ENOTSUP] Invalid or unsupported value for policy.
The pthread_attr_setscope() function will fail if:
[EINVAL] Invalid value for attr.
[ENOTSUP] Invalid or unsupported value for
contentionscope.

SEE ALSO

pthread_attr_get_np(3), pthread_create(3)

STANDARDS

The 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() func
tions conform to
Version 2 of the Single UNIX Specification (``SUSv2'')
BSD April 28, 2000
Copyright © 2010-2025 Platon Technologies, s.r.o.           Home | Man pages | tLDP | Documents | Utilities | About
Design by styleshout