Condividi tramite


Funzione DeleteCriticalSection (synchapi.h)

Rilascia tutte le risorse usate da un oggetto sezione critica non generato.

Sintassi

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

Parametri

[in, out] lpCriticalSection

Puntatore all'oggetto sezione critica. L'oggetto deve essere stato inizializzato in precedenza con la funzione InitializeCriticalSection .

Valore restituito

nessuno

Osservazioni

L'eliminazione di un oggetto sezione critica rilascia tutte le risorse di sistema usate dall'oggetto . Il chiamante è responsabile della garanzia che l'oggetto sezione critica non venga generato e la struttura di CRITICAL_SECTION specificata non viene accessibile da alcuna funzione di sezione critica chiamata da altri thread nel processo.

Dopo l'eliminazione di un oggetto di sezione critica, non fare riferimento all'oggetto in qualsiasi funzione che opera su sezioni critiche(ad esempio EnterCriticalSection, TryEnterCriticalSection e LeaveCriticalSection) diverso da InitializeCriticalSection e InitializeCriticalSectionAndSpinCount. Se si tenta di farlo, il danneggiamento della memoria e altri errori imprevisti possono verificarsi.

Se una sezione critica viene eliminata mentre è ancora di proprietà, lo stato dei thread in attesa della proprietà della sezione critica eliminata non è definito.

Esempio

Per un esempio che usa DeleteCriticalSection, vedere Uso di oggetti di sezione critici.

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 (includere 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

EnterCriticalSection

InitializeCriticalSection

LeaveCriticalSection

Funzioni di sincronizzazione

TryEnterCriticalSection

API Vertdll disponibili nelle enclave VBS