pthread_setschedprio()

Задать приоритет потока

Прототип:

#include <pthread.h>
int pthread_setschedprio( pthread_t thread,
int prio );

Аргументы:

thread
Идентификатор потока, для которого требуется получить параметры планирования. Получить идентификатор потока можно, вызвав pthread_create() или pthread_self().
prio
Новый приоритет планирования.

Библиотека:

libc

Описание:

Функция pthread_setschedprio() устанавливает приоритет потока thread в значение prio.

Если поток запущен или готов к выполнению, влияние на его положение в очереди готовности зависит от направления модификации:

Функция pthread_setschedprio() дает возможность временно повысить приоритет потока и снова понизить его, не уступая другим потокам с таким же приоритетом. Это необходимо, если требуется реализовать собственные стратегии ограничения инверсии приоритетов, такие как наследование приоритетов или наивысшие значения приоритетов.

Возвращаемое значение:

EOK
Успешное завершение.
EINVAL
Приоритет недействителен для дисциплины планирования указанного потока.
ENOTSUP
Указанный приоритет не поддерживается.
EPERM
Вызывающий поток не имеет привилегий для изменения приоритета указанного потока.
ESRCH
Недопустимый идентификатор потока thread.

Классификация:

POSIX 1003.1 Threads, Thread Execution Scheduling

Безопасность использования
Точка остановки потока
Нет
Обработчик прерываний
Нет
Обработчик сигналов
Да
В потоке
Да

Тематические ссылки:

pthread_getschedparam(), pthread_setschedparam(), sched_setparam()




Предыдущий раздел: Описание API системной библиотеки