DeleteCriticalSection 函式 (synchapi.h)

釋放未擁有之重要區段物件所使用的所有資源。

語法

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

參數

[in, out] lpCriticalSection

重要區段物件的指標。 物件先前必須使用 InitializeCriticalSection 函式進行初始化。

傳回值

備註

刪除重要區段物件會釋放 物件所使用的所有系統資源。 呼叫端負責確保重要區段物件未擁有,而且進程中其他線程所呼叫的任何重要區段函式都不會存取指定的CRITICAL_SECTION結構。

刪除重要區段對象之後,請勿參考任何在重要區段上運作的物件, (例如 EnterCriticalSection、TryEnterCriticalSection 和 LeaveCriticalSection) ,而不是 InitializeCriticalSection 和 InitializeCriticalSectionAndSpinCount 如果您嘗試這樣做,可能會發生記憶體損毀和其他未預期的錯誤。

如果在仍然擁有重要區段時刪除重要區段,則等候已刪除重要區段擁有權的線程狀態未定義。

範例

如需使用 DeleteCriticalSection的範例,請參閱 使用重要區段物件

規格需求

需求
最低支援的用戶端 Windows XP [傳統型應用程式 |UWP 應用程式]
最低支援的伺服器 Windows Server 2003 [傳統型應用程式 |UWP 應用程式]
目標平台 Windows
標頭 synchapi.h (Windows Server 2003、Windows Vista、Windows 7、Windows Server 2008 Windows Server 2008 R2)
程式庫 Kernel32.lib
DLL Kernel32.dll

另請參閱

重要區段物件

EnterCriticalSection

InitializeCriticalSection

LeaveCriticalSection

同步處理函式

TryEnterCriticalSection

VBS 記憶體保護區中可用的 Vertdll API