timed_wait_conditionT_timed_wait_conditionTimedWaitConditionTimedWaitCondition (Operator)
Name
timed_wait_conditionT_timed_wait_conditionTimedWaitConditionTimedWaitCondition
— Begrenztes Warten auf das Signal eines Condition-Synchronisationsobjektes.
Signatur
Beschreibung
timed_wait_conditiontimed_wait_conditionTimedWaitConditionTimedWaitConditionTimedWaitCondition
gibt MutexHandleMutexHandleMutexHandleMutexHandlemutexHandle
frei und wartet auf
das Signalisieren von ConditionHandleConditionHandleConditionHandleConditionHandleconditionHandle
. Wie bei
wait_conditionwait_conditionWaitConditionWaitConditionWaitCondition
geschehen Freigabe und Warten atomar, jedoch kann die
Dauer des Wartens begrenzt werden. Falls ConditionHandleConditionHandleConditionHandleConditionHandleconditionHandle
nicht
während der von TimeoutTimeoutTimeoutTimeouttimeout
vorgegebenen Zeit (in Mikrosekunden)
signalisiert wurde, wird der Mutex MutexHandleMutexHandleMutexHandleMutexHandlemutexHandle
wieder gesperrt und
timed_wait_conditiontimed_wait_conditionTimedWaitConditionTimedWaitConditionTimedWaitCondition
wirft den Fehler H_ERR_TIMEOUT.
Negative Werte für TimeoutTimeoutTimeoutTimeouttimeout
bedeuten ein unendlich langes Warten.
Ausführungsinformationen
- Multithreading-Typ: independent (läuft parallel auch zu exklusiven Operatoren).
- Multithreading-Bereich: global (kann von jedem Thread aufgerufen werden).
- Wird ohne Parallelisierung verarbeitet.
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.
TimeoutTimeoutTimeoutTimeouttimeout
(input_control) number →
HTupleHTupleHtuple (integer) (int / long) (Hlong) (Hlong)
Timeout in Mikrosekunden.
Ergebnis
Sind die Parameterwerte korrekt, dann liefert timed_wait_conditiontimed_wait_conditionTimedWaitConditionTimedWaitConditionTimedWaitCondition
den Wert 2 (H_MSG_TRUE). Gegebenenfalls wird eine Fehlerbehandlung durchgeführt.
Kommt es zu einer Zeitüberschreitung, wird der Wert H_ERR_TIMEOUT zurück
gegeben.
Nachfolger
signal_conditionsignal_conditionSignalConditionSignalConditionSignalCondition
,
clear_conditionclear_conditionClearConditionClearConditionClearCondition
Modul
Foundation