| PTHREAD_ATTR(3) | Library Functions Manual | PTHREAD_ATTR(3) |
NAME
pthread_attr_getinheritsched,
pthread_attr_setinheritsched —
thread attribute operations
SYNOPSIS
#include
<pthread.h>
int
pthread_attr_getinheritsched(const
pthread_attr_t *restrict attr, int *restrict
inheritsched);
int
pthread_attr_setinheritsched(pthread_attr_t
*attr, int inheritsched);
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.
One of the thread attributes of interest is the "inheritsched" attribute. This attribute controls the scheduling policy and related attributes of the newly created thread. The values of the "inheritsched" attribute can be either PTHREAD_INHERIT_SCHED or PTHREAD_EXPLICIT_SCHED.
PTHREAD_INHERIT_SCHED
Indicates that the newly created thread should inherit all it's scheduling related attributes from it's creating thread. It ignores the values of the relevant attributes within the attr argument.
PTHREAD_EXPLICIT_SCHED
Indicates that the newly created thread should set it's scheduling related attributes based on attr argument.
The
pthread_attr_setinheritsched()
functions set the "inheritsched" attribute within the
attr argument to the desired value.
The
pthread_attr_getinheritsched()
functions copy the value of the "inheritsched" attribute 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
pthread_attr_getinheritsched() will fail
if:
- [
EINVAL] - Invalid value for attr.
pthread_attr_setinheritsched() will fail
if:
- [
EINVAL] - Invalid value for attr.
BUGS
The "inheritsched" attribute has no effect on Darwin. It is provided for compatibility only.
SEE ALSO
pthread_create(3), pthread_attr_init(3), pthread_attr_setschedparam(3)
STANDARDS
pthread_attr_setinheritsched(),
pthread_attr_getinheritsched() conform to
Version 2 of the Single UNIX Specification
(“SUSv2”)
| December 31, 2007 | macOS 26.4 |