Funzione LeaveCriticalSection (synchapi.h)

Rilascia la proprietà dell'oggetto sezione critica specificata.

Sintassi

void LeaveCriticalSection(
  [in, out] LPCRITICAL_SECTION lpCriticalSection
);

Parametri

[in, out] lpCriticalSection

Puntatore all'oggetto sezione critica.

Valore restituito

nessuno

Osservazioni

I thread di un singolo processo possono usare un oggetto sezione critica per la sincronizzazione dell'esclusione reciproca. Il processo è responsabile dell'allocazione della memoria usata da un oggetto sezione critica, che può eseguire dichiarando una variabile di tipo CRITICAL_SECTION. Prima di usare una sezione critica, alcuni thread del processo devono chiamare la funzione InitializeCriticalSection o InitializeCriticalSectionAndSpinCount per inizializzare l'oggetto.

Un thread usa la funzione EnterCriticalSection o TryEnterCriticalSection per acquisire la proprietà di un oggetto sezione critica. Per rilasciarne la proprietà, il thread deve chiamare LeaveCriticalSection una volta per ogni volta che ha immesso la sezione critica.

Se un thread chiama LeaveCriticalSection quando non ha la proprietà dell'oggetto sezione critica specificata, si verifica un errore che potrebbe causare l'attesa indefinita di un altro thread tramite EnterCriticalSection .

LeaveCriticalSection non accede alla struttura CRITICAL_SECTION specificata dopo il rilascio della proprietà di un oggetto sezione critica.

Qualsiasi thread del processo può usare la funzione DeleteCriticalSection per rilasciare le risorse di sistema allocate durante l'inizializzazione dell'oggetto sezione critica. Dopo aver chiamato questa funzione, l'oggetto sezione critica non può più essere usato per la sincronizzazione.

Esempio

Per un esempio che usa LeaveCriticalSection, vedere Using Critical Section Objects.For an example that uses LeaveCriticalSection, see Using Critical Section Objects.

Requisiti

Requisito Valore
Client minimo supportato Windows XP [app desktop | App UWP]
Server minimo supportato Windows Server 2003 [app desktop | App UWP]
Piattaforma di destinazione Windows
Intestazione synchapi.h (include Windows.h in Windows Server 2003, Windows Vista, Windows 7, Windows Server 2008 Windows Server 2008 R2)
Libreria Kernel32.lib
DLL Kernel32.dll

Vedere anche

Oggetti sezione critica

DeleteCriticalSection

EnterCriticalSection

InitializeCriticalSection

InitializeCriticalSectionAndSpinCount

Funzioni di sincronizzazione

TryEnterCriticalSection

API Vertdll disponibili nelle enclave VBS