Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Платформа определяет следующие состояния для очередей ввода-вывода:
бездействия
Очередь ввода-вывода не содержит запросов ввода-вывода, а драйвер не обрабатывает запросы, полученные из очереди ввода-вывода.
готово
Очередь ввода-вывода может получать запросы ввода-вывода из платформы, и она может доставлять запросы ввода-вывода драйверу.
остановлено
Очередь ввода-вывода может получать запросы ввода-вывода из платформы, но не может доставлять запросы ввода-вывода драйверу, а драйвер не обрабатывает запросы, полученные из очереди ввода-вывода.
осушенное
Очередь ввода-вывода пуста, она не может получать новые запросы ввода-вывода из платформы, а все запросы ввода-вывода, которые находились в очереди ввода-вывода, были доставлены драйверу.
очищено
Очередь ввода-вывода пуста, она не может получать новые запросы ввода-вывода из платформы, а все запросы ввода-вывода, которые находились в очереди ввода-вывода, были отменены.
Фреймворк может установить новый список ввода-вывода в готовое состояние после того, как ваш драйвер вызовет WdfIoQueueCreate. Однако очереди ввода-вывода с управлением энергопотреблением входят в состояние готовности только в том случае, если устройство находится в рабочем состоянии (D0).
Драйвер может изменить состояние очереди ввода-вывода следующими способами:
Вызов WdfIoQueueStop или WdfIoQueueStopSynchronously для перевода очереди в остановленное состояние.
Вызов WdfIoQueueDrain или WdfIoQueueDrainSynchronously для перевода очереди в её состояние осушения.
Вызов WdfIoQueuePurge или WdfIoQueuePurgeSynchronously, чтобы поместить очередь в состояние очистки.
Вызов WdfIoQueueStart, чтобы вернуть очередь в состояние готовности.
Чтобы получить текущее состояние очереди ввода-вывода, драйвер может вызвать WdfIoQueueGetState.