WdfIoQueueStopSynchronously 関数 (wdfio.h)
[KMDF と UMDF に適用]
WdfIoQueueStopSynchronously メソッドは、I/O キューが I/O 要求を配信できないようにしますが、キューは新しい要求を受信して格納します。 メソッドは、配信されたすべての要求が取り消されたか完了した後に を返します。
構文
void WdfIoQueueStopSynchronously(
[in] WDFQUEUE Queue
);
パラメーター
[in] Queue
フレームワーク キュー オブジェクトへのハンドル。
戻り値
なし
解説
ドライバーが無効なオブジェクト ハンドルを提供すると、バグ チェックが発生します。
WdfIoQueueStopSynchronously メソッドを使用すると、WdfIoQueueStopSynchronously というドライバーの前にキューが新しい要求を受信していない場合でも、キューは新しい要求を受信できます。 たとえば、ドライバーが WdfIoQueueDrain を呼び出すと、フレームワークはキューへの新しい I/O 要求の追加を停止します。 ドライバーの後続の WdfIoQueueStopSynchronously を呼び出すと、フレームワークはキューへの要求の追加を再開します。
イベント コールバック関数が関連付けられているキューに関係なく、次のキュー オブジェクト イベント コールバック関数から WdfIoQueueStopSynchronously を呼び出さないでください。
EvtIoDefaultEvtIoDeviceControlEvtIoInternalDeviceControlEvtIoReadEvtIoWriteWdfIoQueueStopSynchronously メソッドの詳細については、「 Manageing I/O Queues」を参照してください。
例
次のコード例では、指定したキューを停止します。
WdfIoQueueStopSynchronously(WriteQueue);
要件
要件 | 値 |
---|---|
対象プラットフォーム | ユニバーサル |
最小 KMDF バージョン | 1.0 |
最小 UMDF バージョン | 2.0 |
Header | wdfio.h (Wdf.h を含む) |
Library | Wdf01000.sys (KMDF);WUDFx02000.dll (UMDF) |
IRQL | PASSIVE_LEVEL |
DDI コンプライアンス規則 | ChangeQueueState(kmdf), DriverCreate(kmdf), EvtSurpriseRemoveNoSuspendQueue(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf), NoCancelFromEvtSurpriseRemove(kmdf) |