Spec-Zone.ru › C

cnd_wait

Определено в заголовочном файле <threads.h>
int cnd_wait( cnd_t* cond, mtx_t* mutex );
(с C11)

Атомарно разблокирует мьютекс, на который указывает mutex и блокируется на условии, на которое указывает cond, до тех пор, пока поток не будет сигнализирован cnd_signal или cnd_broadcast, или до возникновения ложного пробуждения. Мьютекс снова блокируется перед возвратом из функции.

Поведение неопределено, если мьютекс не заблокирован вызывающим потоком.

Параметры

cond - указатель на переменную условия, на которой ожидается блокировка
mutex - указатель на мьютекс, который разблокируется на время блокировки

Значение результата

thrd_success в случае успеха, thrd_error в противном случае.

Ссылки

  • Стандарт C17 (ISO/IEC 9899:2018):
    • 7.26.3.6 Функция cnd_wait (стр. 277)
  • Стандарт C11 (ISO/IEC 9899:2011):
    • 7.26.3.6 Функция cnd_wait (стр. 380)

См. также

cnd_timedwait
(C11)
ожидает блокировку на переменной условия с таймаутом
(функция)
Документация C++ для condition_variable::wait
Документация C++ для condition_variable_any::wait

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/c/thread/cnd_wait

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API