次の方法で共有


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

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

戻り値

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

備考

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

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

必要条件

要件 価値
ターゲット プラットフォーム 万国
ヘッダー storport.h (Storport.h を含む)

関連項目

KeInsertQueueDpc

STOR_DPC

StorPortInitializeDpc