次の方法で共有


ExAcquireRundownProtectionEx 関数 (wdm.h)

ExAcquireRundownProtectionEx ルーチンは、呼び出し元がオブジェクトに安全にアクセスできるように、共有オブジェクトのランダウン保護を取得しようとします。

構文

BOOLEAN ExAcquireRundownProtectionEx(
  [in, out] PEX_RUNDOWN_REF RunRef,
  [in]      ULONG           Count
);

パラメーター

[in, out] RunRef

ExInitializeRundownProtection ルーチンの前回の呼び出しによって初期化された EX_RUNDOWN_REF 構造体へのポインター。 ランダウン保護ルーチンでは、この構造を使用して、関連付けられている共有オブジェクトのランダウン状態を追跡します。 この構造体はドライバーに対して不透明です。

[in] Count

オブジェクトのランダウン インスタンス数までインクリメントする量。 カウントは、ルーチンが TRUE 返す場合にのみインクリメントされます。 詳細については、「解説」を参照してください。

戻り値

ExAcquireRundownProtectionEx は、ルーチンが呼び出し元のランダウン保護 正常に取得した場合に TRUE を返します。 それ以外の場合は、FALSE 返します。 FALSE の戻り値は、オブジェクトの実行が開始され、オブジェクトを無効として扱う必要があることを示します。

備考

共有オブジェクトに安全にアクセスするために、ドライバーは ExAcquireRundownProtectionEx を呼び出して、オブジェクトのランダウン保護を取得します。

RunRef パラメーターは、関連付けられたオブジェクトのランダウン状態を追跡する EX_RUNDOWN_REF 構造体を指します。 この状態情報には、現在オブジェクトに対して有効になっているランダウン保護のインスタンスの数が含まれます。 ExAcquireRundownProtectionEx および ExReleaseRundownProtectionEx ルーチン は、このカウントを任意の量だけインクリメントおよびデクリメントします。 ExAcquireRundownProtection と exReleaseRundownProtection 、このカウントを 1 ずつインクリメントおよびデクリメントする 2 つの関連ルーチン。

ランダウン ブロック自体が非ページである限り、この関数はDISPATCH_LEVELで呼び出すことができます。

詳細については、「Run-Down 保護」を参照してください。

必要条件

要件 価値
サポートされる最小クライアント Windows Server 2003 以降で使用できます。
ターゲット プラットフォーム 万国
ヘッダー wdm.h (Wdm.h を含む)
ライブラリ NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= DISPATCH_LEVEL (解説を参照)
DDI コンプライアンス規則 する hwStorPortProhibitedDDDIs(storport) する

関連項目

EX_RUNDOWN_REF

ExAcquireRundownProtection

ExInitializeRundownProtection

ExReleaseRundownProtection

ExReleaseRundownProtectionEx