WdfIoQueueStopSynchronously-Funktion (wdfio.h)
[Gilt für KMDF und UMDF]
Die WdfIoQueueStopSynchronously-Methode verhindert, dass eine E/A-Warteschlange E/A-Anforderungen liefert, aber die Warteschlange empfängt und speichert neue Anforderungen. Die Methode gibt zurück, nachdem alle übermittelten Anforderungen abgebrochen oder abgeschlossen wurden.
Syntax
void WdfIoQueueStopSynchronously(
[in] WDFQUEUE Queue
);
Die Parameter
[in] Queue
Ein Handle zu einem Framework-Warteschlangenobjekt.
Rückgabewert
Nichts
Bemerkungen
Wenn der Treiber ein ungültiges Objekthandle bereitstellt, tritt eine Fehlerüberprüfung auf.
Mit der WdfIoQueueStopSynchronously-Methode kann die Warteschlange neue Anforderungen empfangen, auch wenn die Warteschlange keine neuen Anforderungen empfängt, bevor der Treiber WdfIoQueueStopSynchronouslyaufgerufen wurde. Beispielsweise kann ein Treiber WdfIoQueueDrainaufrufen, wodurch das Framework das Hinzufügen neuer E/A-Anforderungen an die Warteschlange beendet. Der nachfolgende Aufruf von WdfIoQueueStopSynchronously bewirkt, dass das Framework das Hinzufügen von Anforderungen zur Warteschlange fortsetzen kann.
Rufen Sie WdfIoQueueStopSynchronous ly nicht aus den folgenden Funktionen des Warteschlangenobjektereignisrückrufs auf, unabhängig von der Warteschlange, der die Ereignisrückruffunktion zugeordnet ist:
EvtIoDefaultEvtIoDeviceControlEvtIoInternalDeviceControlEvtIoReadEvtIoWrite Weitere Informationen zur WdfIoQueueStopSynchronously-Methode finden Sie unter Managing I/O Queues.
Beispiele
Im folgenden Codebeispiel wird eine angegebene Warteschlange beendet.
WdfIoQueueStopSynchronously(WriteQueue);
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform | universell |
Minimale KMDF-Version | 1.0 |
Mindest-UMDF-Version | 2.0 |
Kopfzeile | wdfio.h (einschließen Wdf.h) |
Bibliothek | Wdf01000.sys (KMDF); WUDFx02000.dll (UMDF) |
IRQL | PASSIVE_LEVEL |
DDI-Complianceregeln | ChangeQueueState(kmdf), DriverCreate(kmdf), EvtSurpriseRemoveNoSuspendQueue(kmdf), KmdfIrql (kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf), NoCancelFromEvtSurpriseRemove(kmdf) |