Параллельное и распределенное программирование на С++ (Хьюз, Хьюз) - страница 400

В целях согласования со стандарто м ISO/IEC 9899: 1999 в прототипы функций pthread_attr_getschedparam() и pthread_attr_setschedparam() было добавлено ключевое слово restrict.

pthread_attr_getschedpolicy, pthread_attr_setschedpolicy

Имя

pthread_attr_getschedpolicy, pthread_attr_setschedpolicy — функции считывания и установки атрибута schedpolicy (REALTIME THREADS).

Синопсис

THR, TPS

#include

int pthread_attr_getschedpolicy (const pthread_attr_t *restrict attr, int *restrict policy) ;

int pthread_attr_setschedpolicy (pthread_attr_t *attr, int policy) ;

Описание

Функции pthread_attr_getschedpolicy () и pthread_attr_setschedpolicy () используются для считывания и установки соответственно атрибута schedpolicy в объекте атрибутов, адресуемом параметром аttr.

Для обозначения стратегии планирования поддерживаются значения SCHED_FIF0, SCHED_RR и SCHED_OTHER, которые определены в заголовке .

TSP Когда потоки, выполняющиеся с использованием стратегий планирования SCHED_FIFO, SCHED_RR или SCHED_SPORADIC, ожидают освобождения мьютекса, то его получение (после разблокировки) происходит согласно приоритета м.

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

При успешном завершении функции pthread_attr_getschedpolicy() и pthread_attr_setschedpolicy() возвращают нулевое значение; в противно м случае — код ошибки, обозначающий ее характер.

Ошибки

Функция pthread_attr_setschedpolicy () м ожет завершиться неудачно, если:

[EINVAL] значение, заданное пара м етро м policy, недействительно;

[ENOTSUP] была сделана попытка установить атрибут равным значению, которое не поддерживается реализацией.

Эти функции не возвращают код ошибки [EINTR].

Примеры

Отсутствуют.

Замечания по использованию

После установки этих атрибутов поток можно создать путем вызова функции pthread_create () с использованием объекта атрибутов. Применение этих функций не оказывает влияния на поток, выполняемый в данный момент.

Логическое обоснование

Отсутствует.

Будущие направления

Отсутствуют.

Смотри также

pthread_attr_destroy(), pthread_attr_getscope(), pthread_attr_getinheritsched (), pthread_attr_getschedparam(), pthread_create (), том Base Definidons стан д арта IEEE Std 1003.1-2001, , .

Последовательность внесения изменений

Функции впервые реализованы в выпуске Issue 5. Включены для согласования с расширение м POSIX Threads Extension.

От м ечены как часть группы Realtime Threads Feature Group.

Issue 6

Функции pthread_attr_getschedpolicy() и pthread_attr_setschedpolicy () от м ечены как часть опций Threads и Thread Execution Scheduling.