Freigeben über


InitializeConditionVariable-Funktion (synchapi.h)

Initialisiert eine Bedingungsvariable.

Syntax

void InitializeConditionVariable(
  [out] PCONDITION_VARIABLE ConditionVariable
);

Parameter

[out] ConditionVariable

Ein Zeiger auf die Bedingungsvariable.

Rückgabewert

Keine

Bemerkungen

Threads können mithilfe der SleepConditionVariableCS - oder SleepConditionVariableSRW-Funktion eine Sperre atomar freigeben und in den Ruhezustand wechseln. Die Threads werden mithilfe der WakeConditionVariable - oder WakeAllConditionVariable-Funktion aktiviert.

Bedingungsvariablen sind Benutzermodusobjekte, die nicht prozessübergreifend freigegeben werden können.

Eine Bedingungsvariable kann während der Verwendung nicht verschoben oder kopiert werden. Der Prozess darf das Objekt nicht ändern und muss es stattdessen als logisch undurchsichtig behandeln. Verwenden Sie nur die Bedingungsvariablenfunktionen, um Bedingungsvariablen zu verwalten.

Eine Bedingungsvariable ohne wartende Threads befindet sich im Anfangszustand und kann kopiert, verschoben und vergessen werden, ohne explizit zerstört zu werden.

Beispiele

Ein Beispiel, das diese Funktion verwendet, finden Sie unter Verwenden von Bedingungsvariablen.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows Vista [Desktop-Apps | UWP-Apps]
Unterstützte Mindestversion (Server) Windows Server 2008 [Desktop-Apps | UWP-Apps]
Zielplattform Windows
Kopfzeile synchapi.h (einschließen von Windows.h unter Windows 7, Windows Server 2008 Windows Server 2008 R2)
Bibliothek Kernel32.lib
DLL Kernel32.dll

Siehe auch

Bedingungsvariablen

Synchronisierungsfunktionen

In VBS-Enclaves verfügbare Vertdll-APIs