Функция pthread_rwlock_wrlock
Текст функции pthread_rwlock_wrlock приведен в листинге 8.6.
11-17 Если ресурс заблокирован на считывание или запись (значение rw_refcount отлично от 0), мы приостанавливаем выполнение потока. Для этого мы увеличиваем rw_nwaitwriters и вызываем pthread_cond_wait с условной переменной rw_condwriters. Для этой переменной посылается сигнал при снятии блокировки чтения-записи, если имеются ожидающие разрешения на запись процессы.
18-19 После получения блокировки на запись мы устанавливаем значение rw_refcount в –1.