PTHREAD_SCHEDPARAM(3) Library Functions Manual PTHREAD_SCHEDPARAM(3)

pthread_setschedparam, pthread_getschedparamthread scheduling parameter manipulation

#include <pthread.h>

int
pthread_setschedparam(pthread_t thread, int policy, const struct sched_param *param);

int
pthread_getschedparam(pthread_t thread, int *policy, struct sched_param *param);

The () and () functions set and get the scheduling parameters of individual threads. The scheduling policy for a thread can either be SCHED_FIFO (first in, first out), SCHED_RR (round-robin), or SCHED_OTHER (timesharing). Valid thread priorities (accessed via param->sched_priority) must be within the range returned by the sched_get_priority_min(2) and sched_get_priority_max(2) system calls.

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

The pthread_setschedparam() function will fail if:

[]
Invalid value for policy.
[]
Invalid value for scheduling parameters.
[]
Non-existent thread thread.

The pthread_getschedparam() function will fail if:

[]
Non-existent thread thread.

sched_get_priority_max(2), sched_get_priority_min(2)

The pthread_setschedparam() and pthread_getschedparam() functions conform to Version 2 of the Single UNIX Specification (“SUSv2”).

October 16, 2006 macOS 15.2