次の方法で共有


StorPortIssueDpc 関数 (storport.h)

StorPortIssueDpc ルーチンは、遅延プロシージャ 呼び出し (DPC) を発行します。

構文

BOOLEAN StorPortIssueDpc(
  [in] PVOID     DeviceExtension,
  [in] PSTOR_DPC Dpc,
  [in] PVOID     SystemArgument1,
  [in] PVOID     SystemArgument2
);

パラメーター

[in] DeviceExtension

アダプターごとのデバイス拡張機能へのポインター。

[in] Dpc

StorPortInitializeDpc ルーチンによって返STOR_DPC型の初期化された DPC オブジェクトを含むバッファーへのポインター。

[in] SystemArgument1

遅延ルーチンに渡される呼び出し元から提供される情報へのポインター。

[in] SystemArgument2

遅延ルーチンに渡される呼び出し元から提供される情報へのポインター。

戻り値

DPC が DPC キューに正常に挿入された場合、 StorPortIssueDpc ルーチンは TRUE を返し、それ以外の場合は FALSE を 返します。

注釈

StorPortIssueDpc ルーチンは、KeInsertQueueDpc カーネル ルーチンを呼び出して DPC をキューに入れます。 KeInsertQueueDpc カーネル ルーチンでは、DPC を複数回キューに入れられません。 したがって、Dpc パラメーターで指定された DPC オブジェクトが既に DPC キューにある場合、 KeInsertQueueDpc はキュー要求を無視します。 これにより、 StorPortInitializeDpc で初期化された遅延ルーチンは、常にそれ自体と同期されます。 つまり、呼び出し元は、複数のインスタンスが同時に実行されないように 、StorPortIssueDpc ルーチンの呼び出しを順次化する必要はありません。

ミニポート ドライバーに、同じ DPC で実行する必要がある複数の作業項目がある場合、ミニポート ドライバーは、次の作業項目の DPC を発行する前に、各作業項目が完了していることを確認する必要があります。

要件

要件
対象プラットフォーム ユニバーサル
Header storport.h (Storport.h を含む)

こちらもご覧ください

KeInsertQueueDpc

STOR_DPC

StorPortInitializeDpc