Namespaces
Variants

cnd_wait

From cppreference.net
Definiert in Header <threads.h>
int cnd_wait ( cnd_t * cond, mtx_t * mutex ) ;
(seit C11)

Entsperrt atomar den Mutex, auf den mutex zeigt, und blockiert auf der Konditionsvariable, auf die cond zeigt, bis der Thread durch cnd_signal oder cnd_broadcast signalisiert wird, oder bis ein spontanes Aufwachen (spurious wake-up) auftritt. Der Mutex wird vor der Rückkehr der Funktion wieder gesperrt.

Das Verhalten ist undefiniert, falls der Mutex nicht bereits vom aufrufenden Thread gesperrt wurde.

Inhaltsverzeichnis

Parameter

cond - Zeiger auf die Bedingungsvariable, auf die gewartet werden soll
mutex - Zeiger auf den Mutex, der für die Dauer der Blockierung entsperrt wird

Rückgabewert

thrd_success bei Erfolg, thrd_error andernfalls.

Referenzen

  • C17-Standard (ISO/IEC 9899:2018):
  • 7.26.3.6 Die cnd_wait-Funktion (S: 277)
  • C11-Standard (ISO/IEC 9899:2011):
  • 7.26.3.6 Die cnd_wait-Funktion (S: 380)

Siehe auch

blockiert auf einer Condition-Variable mit Timeout
(Funktion)
C++-Dokumentation für condition_variable::wait
C++-Dokumentation für condition_variable_any::wait