Freigeben über


E/A-Warteschlangenzustände

Das Framework definiert die folgenden Zustände für E/A-Warteschlangen:

Untätig
Die E/A-Warteschlange enthält keine E/A-Anforderungen, und der Treiber verarbeitet keine Anforderungen, die er von der E/A-Warteschlange erhalten hat.

Fertig
Die E/A-Warteschlange kann E/A-Anforderungen vom Framework empfangen und E/A-Anforderungen an den Treiber übermitteln.

Angehalten
Die E/A-Warteschlange kann E/A-Anforderungen vom Framework empfangen, kann jedoch keine E/A-Anforderungen an den Treiber übermitteln, und der Treiber verarbeitet keine Anforderungen, die er von der E/A-Warteschlange erhalten hat.

Aufgelöst
Die E/A-Warteschlange ist leer, sie kann keine neuen E/A-Anforderungen aus dem Framework empfangen, und alle E/A-Anforderungen, die sich in der E/A-Warteschlange befanden, wurden an den Treiber übermittelt.

Gereinigt
Die E/A-Warteschlange ist leer, sie kann keine neuen E/A-Anforderungen aus dem Framework empfangen, und alle E/A-Anforderungen, die sich in der E/A-Warteschlange befanden, wurden abgebrochen.

Das Framework kann eine neue E/A-Warteschlange auf den bereiten Zustand festlegen, nachdem Ihr Treiber WdfIoQueueCreate aufgerufen hat. Stromverwaltete E/A-Warteschlangen treten jedoch nur dann in den Zustand "Bereit", wenn sich das Gerät im Arbeitszustand (D0) befindet.

Ihr Treiber kann den Status einer E/A-Warteschlange wie folgt ändern:

Um den aktuellen Status einer E/A-Warteschlange abzurufen, kann Ihr Treiber WdfIoQueueGetState aufrufen.