wait_conditionT_wait_conditionWaitConditionWaitCondition (Operator)

Name

wait_conditionT_wait_conditionWaitConditionWaitCondition — Warten auf das Signal eines Condition-Synchronisationsobjektes.

Signatur

wait_condition( : : ConditionHandle, MutexHandle : )

Herror T_wait_condition(const Htuple ConditionHandle, const Htuple MutexHandle)

void WaitCondition(const HTuple& ConditionHandle, const HTuple& MutexHandle)

void HCondition::WaitCondition(const HMutex& MutexHandle) const

static void HOperatorSet.WaitCondition(HTuple conditionHandle, HTuple mutexHandle)

void HCondition.WaitCondition(HMutex mutexHandle)

Beschreibung

wait_conditionwait_conditionWaitConditionWaitConditionWaitCondition gibt den Mutex, gegeben durch MutexHandleMutexHandleMutexHandleMutexHandlemutexHandle, frei (vergleiche unlock_mutexunlock_mutexUnlockMutexUnlockMutexUnlockMutex) und wartet bis die Condition-Variable ConditionHandleConditionHandleConditionHandleConditionHandleconditionHandle signalisiert wird. Freigeben und Warten geschehen atomar. Die Threadausführung wird unterbrochen und verursacht keine Prozessorlast, bis die Condition signalisiert wird. Der Mutex muss bei der Übergabe zu wait_conditionwait_conditionWaitConditionWaitConditionWaitCondition vom aufrufenden Thread gesperrt sein. Bevor der Operator wieder zum aufrufenden Thread zurückkehrt, wird der Mutex wieder gesperrt (vergleiche lock_mutexlock_mutexLockMutexLockMutexLockMutex).

Wenn der Programmierer dafür sorgt, dass alle Threads stets den Mutex sperren bevor sie die Condition signalisieren, dann ist sichergestellt, dass eine Condition nicht zwischen dem Zeitpunkt des Sperren eines Mutexes und dem Warten auf eine Condition signalisiert (und somit ignoriert) werden kann.

Ausführungsinformationen

Parameter

ConditionHandleConditionHandleConditionHandleConditionHandleconditionHandle (input_control)  condition HCondition, HTupleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)

Condition-Synchronisationsobjekt.

MutexHandleMutexHandleMutexHandleMutexHandlemutexHandle (input_control)  mutex HMutex, HTupleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)

Mutex-Synchronisationsobjekt.

Ergebnis

Ist der Parameterwert korrekt, dann liefert wait_conditionwait_conditionWaitConditionWaitConditionWaitCondition den Wert 2 (H_MSG_TRUE). Gegebenenfalls wird eine Fehlerbehandlung durchgeführt.

Nachfolger

signal_conditionsignal_conditionSignalConditionSignalConditionSignalCondition, clear_conditionclear_conditionClearConditionClearConditionClearCondition

Modul

Foundation