pthread_attr_getscope, pthread_attr_setscope — get and set the contentionship attribute (REALTIME THREADS)
THR TPS #include <pthread.h> int pthread_attr_getscope(const pthread_attr_t *restrictattr
, int *restrictcontentionscope
); int pthread_attr_setscope(pthread_attr_t *attr
, intcontentionscope
);
The pthread_attr_getscope() and pthread_attr_setscope() functions, respectively, shall get and set the contentionscope attribute in the attr object.
The contentionscope attribute may have the values PTHREAD_SCOPE_SYSTEM, signifying system scheduling contention scope, or PTHREAD_SCOPE_PROCESS, signifying process scheduling contention scope. The symbols PTHREAD_SCOPE_SYSTEM and PTHREAD_SCOPE_PROCESS are defined in the <pthread.h> header.
If successful, the pthread_attr_getscope() and pthread_attr_setscope() functions shall return zero; otherwise, an error number shall be returned to indicate the error.
The pthread_attr_setscope() function may fail if:
[EINVAL] | The value of contentionscope is not valid. |
[ENOTSUP] | An attempt was made to set the attribute to an unsupported value. |
These functions shall not return an error code of [EINTR].
After these attributes have been set, a thread can be created with the specified attributes using pthread_create(). Using these routines does not affect the current running thread.
pthread_attr_destroy(), pthread_attr_getinheritsched(), pthread_attr_getschedpolicy(), pthread_attr_getschedparam(), pthread_create(), the Base Definitions volume of IEEE Std 1003.1-2001, <pthread.h>, <sched.h>
First released in Issue 5. Included for alignment with the POSIX Threads Extension.
Marked as part of the Realtime Threads Feature Group.
The pthread_attr_getscope() and pthread_attr_setscope() functions are marked as part of the Threads and Thread Execution Scheduling options.
The [ENOSYS] error condition has been removed as stubs need not be provided if an implementation does not support the Thread Execution Scheduling option.
The restrict keyword is added to the pthread_attr_getscope() prototype for alignment with the ISO/IEC 9899: 1999 standard.
18.216.150.75