共用方式為


exAcquireSpinLockShared 函式 (wdm.h)

ExAcquireSpinLockShared 例程會取得呼叫端共用存取的微調鎖定,並引發 IRQL 以DISPATCH_LEVEL。

語法

KIRQL ExAcquireSpinLockShared(
  [in, out] PEX_SPIN_LOCK SpinLock
);

參數

[in, out] SpinLock

要取得共用存取之微調鎖定的指標。 呼叫端不得已經擁有這個微調鎖定。

傳回值

ExAcquireSpinLockShared 例程會傳回先前的 IRQL 值。 如需詳細資訊,請參閱備註一節。

備註

在進入此例程時,呼叫端必須在 IRQL <= DISPATCH_LEVEL上執行。 此例程會引發 IRQL 以DISPATCH_LEVEL,並傳回原始 (輸入) IRQL 值。

若要釋放微調鎖定,請呼叫 ExReleaseSpinLockShared 例程。 ExReleaseSpinLockShared 會將 IRQL 還原為 在 ExAcquireSpinLockShared 專案上擁有的原始值。

微調鎖定是EX_SPIN_LOCK類型的32位變數。 驅動程式必須配置微調鎖定的記憶體,並將微調鎖定初始化為零。 此記憶體必須位於非分頁的系統空間記憶體中。

呼叫端應該在釋放它之前,先短暫保留微調鎖定。 如需詳細資訊,請參閱 微調鎖定簡介

遞歸擷取微調鎖定會導致死結,而且不允許。

規格需求

需求
標頭 wdm.h
IRQL DISPATCH_LEVEL (请参阅备注.)

另請參閱

ExReleaseSpinLockShared