Ask Learn
Preview
Please sign in to use this experience.
Sign inThis browser is no longer supported.
Upgrade to Microsoft Edge to take advantage of the latest features, security updates, and technical support.
Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Initializes a condition variable.
void InitializeConditionVariable(
[out] PCONDITION_VARIABLE ConditionVariable
);
[out] ConditionVariable
A pointer to the condition variable.
None
Threads can atomically release a lock and enter the sleeping state using the SleepConditionVariableCS or SleepConditionVariableSRW function. The threads are woken using the WakeConditionVariable or WakeAllConditionVariable function.
Condition variables are user-mode objects that cannot be shared across processes.
A condition variable cannot be moved or copied while in use. The process must not modify the object, and must instead treat it as logically opaque. Only use the condition variable functions to manage condition variables.
A condition variable with no waiting threads is in its initial state and can be copied, moved, and forgotten without being explicitly destroyed.
For an example that uses this function, see Using Condition Variables.
Requirement | Value |
---|---|
Minimum supported client | Windows Vista [desktop apps | UWP apps] |
Minimum supported server | Windows Server 2008 [desktop apps | UWP apps] |
Target Platform | Windows |
Header | synchapi.h (include Windows.h on Windows 7, Windows Server 2008 Windows Server 2008 R2) |
Library | Kernel32.lib |
DLL | Kernel32.dll |
Please sign in to use this experience.
Sign in