GNU/Linux |
RedHat 6.2(Zoot) |
|
![]() |
pthread_setschedparam(3thr) |
![]() |
pthread_setschedparam, pthread_getschedparam − control thread scheduling parameters
#include <pthread.h>
int pthread_setschedparam(pthread_t target_thread, int policy, const struct sched_param *param);
int pthread_getschedparam(pthread_t target_thread, int *policy, struct sched_param *param);
pthread_setschedparam sets the scheduling parameters for the thread target_thread as indicated by policy and param. policy can be either SCHED_OTHER (regular, non-realtime scheduling), SCHED_RR (realtime, round-robin) or SCHED_FIFO (realtime, first-in first-out). param specifies the scheduling priority for the two realtime policies. See sched_setpolicy(2) for more information on scheduling policies.
The realtime scheduling policies SCHED_RR and SCHED_FIFO are available only to processes with superuser privileges.
pthread_getschedparam retrieves the scheduling policy and scheduling parameters for the thread target_thread and store them in the locations pointed to by policy and param, respectively.
pthread_setschedparam and pthread_getschedparam return 0 on success and a non-zero error code on error.
On error, pthread_setschedparam returns the following error codes:
EINVAL |
policy is not one of SCHED_OTHER, SCHED_RR, SCHED_FIFO | ||
EINVAL |
the priority value specified by param is not valid for the specified policy | ||
EPERM |
the calling process does not have superuser permissions | ||
ESRCH |
the target_thread is invalid or has already terminated | ||
EFAULT |
param points outside the process memory space |
On error, pthread_getschedparam returns the following error codes:
ESRCH |
the target_thread is invalid or has already terminated | ||
EFAULT |
policy or param point outside the process memory space |
Xavier Leroy <Xavier.Leroy@inria.fr>
sched_setscheduler(2), sched_getscheduler(2), sched_getparam(2), pthread_attr_setschedpolicy(3), pthread_attr_setschedparam(3).
![]() |
pthread_setschedparam(3thr) | ![]() |