KeInsertDeviceQueue 関数 (wdm.h)
KeInsertDeviceQueue ルーチンは、指定したデバイス キュー オブジェクトのスピン ロックを取得し、デバイス キューがビジー状態に設定されている場合は、指定したエントリをキューに入れます。
構文
BOOLEAN KeInsertDeviceQueue(
[in, out] PKDEVICE_QUEUE DeviceQueue,
[in, out] PKDEVICE_QUEUE_ENTRY DeviceQueueEntry
);
パラメーター
[in, out] DeviceQueue
呼び出し元がストレージを提供するデバイス キュー型のコントロール オブジェクトへのポインター。
[in, out] DeviceQueueEntry
挿入するデバイス キュー エントリへのポインター。
戻り値
デバイス キューが空の場合は FALSE が返され、 DeviceQueueEntry はデバイス キューに挿入されません。
注釈
デバイス キューがビジー状態に設定されている場合、指定された DeviceQueueEntry がデバイス キューの末尾に挿入され、デバイス キューのスピン ロックが解放されます。
KeInsertDeviceQueue が FALSE を返した場合、エントリはキューに入れられなかったので、呼び出し元は IRP の処理を開始する必要があります。 キューが空の場合に KeInsertDeviceQueue または KeInsertByKeyDeviceQueue を呼び出すと、デバイス キューがビジー状態からビジー状態に変わります。
このルーチンは、デバイス ドライバーに I/O 要求をキューに入れるコード用です。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 2000 以降で使用できます。 |
対象プラットフォーム | ユニバーサル |
Header | wdm.h (Wdm.h、Ntddk.h、Ntifs.h を含む) |
Library | NtosKrnl.lib |
[DLL] | NtosKrnl.exe |
IRQL | DISPATCH_LEVEL |
DDI コンプライアンス規則 | HwStorPortProhibitedDDIs(storport)、 IrqlDispatch(storport)、IrqlDispatch(storport)、 IrqlDispatch(wdm)、 MarkingQueuedIrps(wdm) |