системных часов, значение которых возвращает функция time (). Разрешение для интервала времени определяется разрешением часов, которые используются для его отсчета. Тип данных timespec определяется в заголовке <time.h>. Ни при каких условиях эта функция не завершится неудачно, если блокировка может быть предоставлена немедленно. В проверке достоверности параметра
Если потоку, заблокированно
Вызывающий поток может попасть в ловушку взаимоблокировки, если во время вызова он удерживает блокировку чтения-записи по объекту, адресуемому параметро
Возвращаемое значение
Функция pthread_rwlock_timedwrlock () возвра
Ошибки
Фу
[ETIMEDOUT] блокировка не
Функция pthread_rwlock_timedwrlock ()
[EDEADLK] вызываю
адресуе
[EINVAL] значение, заданное пара
Эта функция не возвра
Примеры
Отсутствуют.
Замечания по использованию
Как упоминалось в томе Base Definitions стандарта IEEE Std 1003.1-2001 (Section 3.285, Priority Inversion), приложения, которые используют эту функцию, могут подвергнуться инверсии приоритетов.
Функция pthread_rwlock_timedwrlock() является частью опций Threads и Timeouts и может быть не предоставлена во всех реализациях.
Логическое обоснование
Отсутствует.
Будущие направления
Отсутствуют.
Смотри также
pthread_rwlock_destroy(),pthread_rwlock_rdlock(), pthread_rwlock_timedrdlock(), pthread_rwlock_tryrdlock (), pthread_rwlock_trywrlock (), pthread_rwlock_unlock (), pthread_rwlock_wrlock (), том Base Definitions стандарта IEEE Std 1003.1-2001, <pthread. h>, <t ime. h>.
Последовательность внесения изменений
Функция впервые реализована в выпуске Issue 6, основание
pthread_rwlock_trywrlock, pthread_rwlock_wrlock
Имя
pthread_rwlock_trywrlock, pthread_rwlock_wrlock — функции, блокирующие объект блокировки чтения- записи для обеспечения записи.
Синопсис
THR
#include <pthread.h>
int pthread_rwlock_trywrlock (pthread_rwlock_t
int pthread_rwlock_wrlock (pthread_rwlock_t
Описание
Функция pthread_rwlock_trywrlock () при
Функция pthread_rwlock_wrlock () при
Реализации могут благоприятствовать записывающим потокам перед считывающими, чтобы избежать зависания записывающего потока. Результаты не определены, если Любая из этих функций вызывается с неинициализированным объектом блокировки чтения-записи. Если потоку, ожидающему блокировки для обеспечения записи, передается сигнал, то после его обработки поток возобновит ожидание освобождения блокировки, как если бы оно и не прерывалось.
Возвращаемые значения
Функция pthread_rwlock_trywrlock() возвра
При успешном завершении функция pthread_rwlock_wrlock () возвращает нулевое значение; в противном случае — код ошибки, обозначающий ее характер.
Ошибки
Функция pthread_rwlock_trywrlock () завершится неудачно, если:
[EBUSY] блокировка чтения-записи не