• В разделе «Синопсис» была изменена метка. Новал метка THR означает, что рассматриваемые функции теперь являются частью опции Threads (ранее они
относились к опции Read-Write Locks стандарта IEEE Std 1003.1j-2000, а также считались частью дополнения XSI).
• Раздел «Описание» был отредактирован следующим образом:
— заданы условия, при которых записывающие потоки имеют преимущество перед считывающими;
— удалена концепция владельца блокировки чтения-записи.
• Был отредактирован раздел «Смотри также».
pthread_rwlockattr_destroy, pthread_rwlockattr_init
Имя
pthread_rwlockattr_destroy, pthread_rwlockattr_init— функции разрушения и инициализации объекта атрибутов для блокировки чтения-записи.
Синопсис
THR #include <pthread.h>
int pthread_rwlockattr_destroy(
pthread_rwlockattr_t *attr); int pthread_rwlockattr_init(pthread_rwlockattr_t *attr);
Описание
Функция pthread_rwlockattr_destroy() используется для разрушения объекта атрибутов для блокировки чтения-записи. Разрушенный объект атрибутов, адресуемый параметром attr, можно инициализировать повторно с помощью функции pthread_rwlockattr_init (); результаты ссылки на этот объект после его разрушения не определены. В конкретной реализации функция pthread_rwlockattr_destroy() может устанавливать объект, адресуемый параметром attr, равным недействительному значению.
Функция pthread_rwlockattr_init () предназначена для инициализации объекта атрибутов блокировки чтения-записи attr значением, действующим по умолчанию для всех атрибутов, определенных конкретной реализацией.
Если функция pthread_rwlockattr_init () вызывается для уже инициализированного объекта атрибутов attr, то результаты вызова этой функции не определены.
После того как объект атрибутов блокировки чтения-записи уже был использован для инициализации одной или нескольких блокировок чтения-записи, Любая функция, которая оказывает влияние на объект атрибутов (включал деструктор), никак не отразится на ранее инициализированных блокировках чтения- записи.
Возвращаемые значения
При успешно
Ошибки
Функция pthread_rwlockattr_destroy () может завершиться неудачно, если:
[EINVAL] значение, заданное параметром attr, недействительно.
Функция pthread_rwlockattr_init () завершится неудачно, если:
[ENOMEM] для инициализации объекта атрибутов блокировки чтения-записи недостаточно существующей памяти.
Эти функции не возвращают код ошибки [EINTR].
Примеры
Отсутствуют.
Замечания по использованию
Отсутствуют.
Логическое обоснование
Отсутствует.
Будущие направления
Отсутствуют.
Смотри также
pthread_rwlock_destroy(), pthread_rwlockattr_getpshared(), pthread_rwlockattr_setpshared (), то
Последовательность внесения изменений
Функции впервые реализованы в выпуске Issue 5.
Issue 6
Для согласования со стандартом IEEE Std 1003.1j-2000 были внесены следующие изменения.
• В разделе «Синопсис» была изменена метка. Новал метка THR означает, что рассматриваемые функции теперь являются частью опции Threads (ранее они относились к опции Read-Write Locks стандарта IEEE Std 1003.1j-2000, а также считались частью дополнения XSI).
• Был отредактирован раздел «Смотри также».
pthread_rwlockattr_getpshared, pthread_rwlockattr_setpshared
Имя
pthread_rwlockattr_getpshared, pthread_rwlockattr_setpshared —функции считывания и установки атрибута
Синопсис
THRTSH #include <pthread.h>
int pthread_rwlockattr_getpshared(
const pthread_rwlockattr_t *restrict attr, int *restrict
pthread_rwlockattr_t * attr, int
Описание
Функция pthread_rwlockattr_getpshared() используется для получения значения атрибута
Атрибут process-sharedycтанaвливaeтcя равны