PTHREAD_ATTR(3) Library Functions Manual PTHREAD_ATTR(3)

pthread_attr_getscope, pthread_attr_setscopethread attribute operations

#include <pthread.h>

int
pthread_attr_getscope(const pthread_attr_t *restrict attr, int *restrict contentionscope);

int
pthread_attr_setscope(pthread_attr_t *attr, int contentionscope);

Thread attributes are used to specify parameters to (). One attribute object can be used in multiple calls to pthread_create(), with or without modifications between calls.

The () and () functions, respectively, set and get the attribute within attr argument that controls the contention scope of the thread. The acceptable values are PTHREAD_SCOPE_SYSTEM, indicating a scheduling contention scope that is system-wide, and PTHREAD_SCOPE_PROCESS, which indicates a process scheduling contention scope. Currently on Mac OS X we only support PTHREAD_SCOPE_SYSTEM.

If successful, these functions return 0. Otherwise, an error number is returned to indicate the error.

pthread_attr_getscope() will fail if:

[]
Invalid value for attr.

pthread_attr_setscope() will fail if:

[]
Invalid value for attr.
[]
Invalid or unsupported value for contentionscope.

pthread_create(3), pthread_attr_init(3), pthread_attr_setinheritsched(3), pthread_attr_setschedpolicy(3), pthread_attr_setschedparam(3)

pthread_attr_setscope(), pthread_attr_getscope() conform to Version 2 of the Single UNIX Specification (“SUSv2”)

December 31, 2007 macOS 15.0