exAcquireFastMutex 函式 (wdm.h)

ExAcquireFastMutex 例程會將具有 APC 的指定快速 Mutex 取得至目前已停用的線程。

語法

void ExAcquireFastMutex(
  PFAST_MUTEX FastMutex
);

參數

FastMutex

[in, out]初始化之快速 Mutex 的指標,呼叫端會為其提供記憶體。

傳回值

備註

如果無法立即取得指定的快速 Mutex,ExAcquireFastMutex 就會讓呼叫端進入等候狀態。 否則,呼叫端會獲得快速 Mutex 的擁有權,並將 APC 提供給目前線程停用,直到它釋放快速 Mutex 為止。

如果目前的線程可以在等候取得指定的 mutex 之前執行其他工作,請使用 ExTryToAcquireFastMutex

任何使用 ExAcquireFastMutexExTryToAcquireFastMutex 取得的快速 mutex 都必須使用 ExReleaseFastMutex 發行。

如需快速 Mutex 的詳細資訊,請參閱 Fast Mutexes 和 Guarded Mutex。

ExAcquireFastMutex 的呼叫端必須在 IRQL <= APC_LEVEL執行。 ExAcquireFastMutex 會將 IRQL 設定為 APC_LEVEL,而呼叫端會在 ExAcquireFastMutex 傳回之後繼續在APC_LEVEL執行。 不過,ExAcquireFastMutex 會將呼叫端先前的 IRQL 儲存在 mutex 中,而且呼叫端叫用 ExReleaseFastMutex 時會還原該 IRQL。

規格需求

需求
最低支援的用戶端 Windows 2000
標頭 wdm.h
IRQL <= APC_LEVEL
DDI 合規性規則 HwStorPortProhibitedDIS (storport) IrqlExApcLte1 (wdm)

另請參閱

FAST_MUTEX

ExAcquireFastMutexUnsafe

ExInitializeFastMutex

ExReleaseFastMutex

ExTryToAcquireFastMutex