共用方式為


ExEnterCriticalRegionAndAcquireResourceExclusive 函式 (wdm.h)

ExEnterCriticalRegionAndAcquireResourceExclusive 例程會先進入重要區域,然後取得指定資源的獨佔存取權。

語法

PVOID ExEnterCriticalRegionAndAcquireResourceExclusive(
  PERESOURCE Resource
);

參數

Resource

[in, out]要取得以供獨佔存取之資源的指標。 此參數指向呼叫端配置的 ERESOURCE 結構。 呼叫端先前從非分頁集區配置此結構,並藉由呼叫 ExInitializeResourceLiteExReinitializeResourceLite 例程加以初始化。

傳回值

不透明系統結構的指標。 驅動程式應該忽略這個傳回值。

言論

如果在指定的資源無法立即可供獨佔存取時呼叫此例程,則會封鎖呼叫線程,直到資源可供使用為止。

當驅動程式線程在關鍵區域中執行時,不會執行驅動程式的使用者 APC 和一般核心 APC。 仍會執行特殊核心 APC。 如需這些 APC 類型的詳細資訊,請參閱 類型。

藉由暫時停用一般核心 APC,ExEnterCriticalRegionAndAcquireResourceExclusive 可防止 APC 佔用被動層級呼叫線程,而線程則保留 APC 可能嘗試存取的共享資源。

呼叫線程應該停留在重要區域中,並保留指定的資源,不再必要。 若要釋放指定的資源並離開重要區域,請呼叫 ExReleaseResourceAndLeaveCriticalRegion 例程。

如需使用 ERESOURCE 結構同步處理資源獨佔存取的詳細資訊,請參閱 ERESOURCE 例程簡介。 如需輸入和離開重要區域的詳細資訊,請參閱 重要區域和受防護區域

要求

要求 價值
最低支援的用戶端 Windows Vista
支援的最低伺服器 Windows Server 2003 SP1
標頭 wdm.h
IRQL <= APC_LEVEL
DDI 合規性規則 CriticalRegions(wdm)HwStorPortProhibitedDIS(storport)

另請參閱

ERESOURCE

ExAcquireResourceExclusiveLite

ExInitializeResourceLite

ExReinitializeResourceLite

ExReleaseResourceLite

ExReleaseResourceAndLeaveCriticalRegion

KeEnterCriticalRegion

KeLeaveCriticalRegion