Content-type: text/html
cc -mt [ flag... ] file... -lpthread [ library... ] #include <pthread.h>
int pthread_attr_getschedpolicy(const pthread_attr_t *restrict attr, int *restrict policy);
int pthread_attr_setschedpolicy(pthread_attr_t *attr, int policy);
The functions pthread_attr_setschedpolicy() and pthread_attr_getschedpolicy(), respectively, set and get the schedpolicy attribute in the attr argument.
The supported values of policy include SCHED_FIFO, SCHED_RR and SCHED_OTHER, which are defined by the header <sched.h>. When threads executing with the scheduling policy SCHED_FIFO or SCHED_RR are waiting on a mutex, they acquire the mutex in priority order when the mutex is unlocked.
If successful, the pthread_attr_setschedpolicy() and pthread_attr_getschedpolicy() functions return 0. Otherwise, an error number is returned to indicate the error.
The pthread_attr_setschedpolicy() or pthread_attr_getschedpolicy() function may fail if:
EINVAL attr or policy is invalid.
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.
See attributes(5) for descriptions of the following attributes:
ATTRIBUTE TYPE | ATTRIBUTE VALUE |
Interface Stability | Standard |
MT-Level | MT-Safe |
pthread_attr_init(3C), pthread_attr_setscope(3C), pthread_attr_setinheritsched(3C), pthread_attr_setschedparam(3C), pthread_create(3C), pthread_setschedparam(3C), attributes(5), standards(5)