ClassesClassesClassesClasses | | | | Operators

timed_wait_conditiontimed_wait_conditionTimedWaitConditiontimed_wait_conditionTimedWaitConditionTimedWaitCondition (Operator)

Name

timed_wait_conditiontimed_wait_conditionTimedWaitConditiontimed_wait_conditionTimedWaitConditionTimedWaitCondition — Bounded wait on the signal of a condition synchronization object.

Signature

timed_wait_condition( : : ConditionHandle, MutexHandle, Timeout : )

Herror timed_wait_condition(const Hlong ConditionHandle, const Hlong MutexHandle, const Hlong Timeout)

Herror T_timed_wait_condition(const Htuple ConditionHandle, const Htuple MutexHandle, const Htuple Timeout)

Herror timed_wait_condition(const HTuple& ConditionHandle, const HTuple& MutexHandle, const HTuple& Timeout)

void HCondition::TimedWaitCondition(const HMutex& MutexHandle, const HTuple& Timeout) const

void TimedWaitCondition(const HTuple& ConditionHandle, const HTuple& MutexHandle, const HTuple& Timeout)

void HCondition::TimedWaitCondition(const HMutex& MutexHandle, Hlong Timeout) const

void HOperatorSetX.TimedWaitCondition(
[in] VARIANT ConditionHandle, [in] VARIANT MutexHandle, [in] VARIANT Timeout)

void HConditionX.TimedWaitCondition(
[in] IHMutexX* MutexHandle, [in] Hlong Timeout)

static void HOperatorSet.TimedWaitCondition(HTuple conditionHandle, HTuple mutexHandle, HTuple timeout)

void HCondition.TimedWaitCondition(HMutex mutexHandle, int timeout)

Description

timed_wait_conditiontimed_wait_conditionTimedWaitConditiontimed_wait_conditionTimedWaitConditionTimedWaitCondition atomically unlocks MutexHandleMutexHandleMutexHandleMutexHandleMutexHandlemutexHandle and waits on ConditionHandleConditionHandleConditionHandleConditionHandleConditionHandleconditionHandle, as wait_conditionwait_conditionWaitConditionwait_conditionWaitConditionWaitCondition does, but it also bounds the duration of the wait. If ConditionHandleConditionHandleConditionHandleConditionHandleConditionHandleconditionHandle has not been signaled within the amount of time specified by TimeoutTimeoutTimeoutTimeoutTimeouttimeout in micro seconds, the mutex MutexHandleMutexHandleMutexHandleMutexHandleMutexHandlemutexHandle is re-acquired and timed_wait_conditiontimed_wait_conditionTimedWaitConditiontimed_wait_conditionTimedWaitConditionTimedWaitCondition returns the error H_ERR_TIMEOUT.

Using negative values for TimeoutTimeoutTimeoutTimeoutTimeouttimeout means an infinite waiting time.

Parallelization

Parameters

ConditionHandleConditionHandleConditionHandleConditionHandleConditionHandleconditionHandle (input_control)  condition HCondition, HTupleHTupleHCondition, HTupleHConditionX, VARIANTHtuple (integer) (IntPtr) (Hlong) (Hlong) (Hlong) (Hlong)

Condition synchronization object.

MutexHandleMutexHandleMutexHandleMutexHandleMutexHandlemutexHandle (input_control)  mutex HMutex, HTupleHTupleHMutex, HTupleHMutexX, VARIANTHtuple (integer) (IntPtr) (Hlong) (Hlong) (Hlong) (Hlong)

Mutex synchronization object.

TimeoutTimeoutTimeoutTimeoutTimeouttimeout (input_control)  number HTupleHTupleHTupleVARIANTHtuple (integer) (int / long) (Hlong) (Hlong) (Hlong) (Hlong)

Timeout in micro seconds.

Result

timed_wait_conditiontimed_wait_conditionTimedWaitConditiontimed_wait_conditionTimedWaitConditionTimedWaitCondition returns 2 (H_MSG_TRUE) if all parameters are correct. If necessary, an exception is raised. If a timeout occurs, the error H_ERR_TIMEOUT is raised.

Possible Successors

signal_conditionsignal_conditionSignalConditionsignal_conditionSignalConditionSignalCondition, clear_conditionclear_conditionClearConditionclear_conditionClearConditionClearCondition

Module

Foundation


ClassesClassesClassesClasses | | | | Operators