KeAcquireGuardedMutex 函式 (wdm.h)

KeAcquireGuardedMutex 例程會取得受防護的 mutex。

語法

void KeAcquireGuardedMutex(
  PKGUARDED_MUTEX Mutex
);

參數

Mutex

[in, out]受防護 Mutex 之KGUARDED_MUTEX 結構的指標。 這個結構必須使用 KeInitializeGuardedMutex 初始化。

傳回值

備註

使用 KeReleaseGuardedMutex 釋放使用 KeAcquireGuardedMutex 取得的 mutex。

如果 Mutex 可用, KeAcquireGuardedMutex 會立即傳回。 否則,呼叫線程會進入等候狀態,直到 mutex 變成可用為止。 若要避免在 mutex 無法使用時進入等候狀態,請使用 KeTryToAcquireGuardedMutex

呼叫 KeAcquireGuardedMutex 的線程會隱含地進入已停用所有 APC 的受防護區域。 它們會保持停用狀態,直到線程使用 KeReleaseGuardedMutex 釋放 mutex 為止。

無法以遞歸方式取得受防護 Mutex:如果線程在呼叫 KeAcquireGuardedMutex 時已經持有 mutex,線程就會死結。

如需受防護 Mutex 的詳細資訊,請參閱 Fast Mutexes 和 Guarded Mutex。

規格需求

需求
最低支援的伺服器 Windows Server 2003
標頭 wdm.h
IRQL <= APC_LEVEL
DDI 合規性規則 HwStorPortProhibitedDIS (storport) IrqlKeApcLte1 (wdm)

另請參閱

KGUARDED_MUTEX

KeReleaseGuardedMutex