Функция WdfIoQueueStopSynchronously (wdfio.h)
[Относится к KMDF и UMDF]
Метод WdfIoQueueStopSynchronously не позволяет очереди ввода-вывода доставлять запросы ввода-вывода, но очередь получает и сохраняет новые запросы. Метод возвращается после отмены или завершения всех доставленных запросов.
Синтаксис
void WdfIoQueueStopSynchronously(
[in] WDFQUEUE Queue
);
Параметры
[in] Queue
Дескриптор объекта очереди платформы.
Возвращаемое значение
None
Remarks
Ошибка проверка возникает, если драйвер предоставляет недопустимый дескриптор объекта.
Метод WdfIoQueueStopSynchronously позволяет очереди получать новые запросы, даже если очередь не получала новые запросы до драйвера с именем WdfIoQueueStopSynchronously. Например, драйвер может вызвать WdfIoQueueDrain, что приводит к прекращению добавления новых запросов ввода-вывода в очередь. Последующий вызов драйвера WdfIoQueueStopSynchronously приводит к возобновлению платформы добавления запросов в очередь.
Не вызывайте WdfIoQueueStopSynchronously из следующих функций обратного вызова событий объекта очереди, независимо от очереди, с которой связана функция обратного вызова события:
EvtIoDefaultEvtIoDeviceControlEvtIoInternalDeviceControlEvtIoReadEvtIoWrite Дополнительные сведения о методе WdfIoQueueStopSynchronously см. в статье Управление очередями ввода-вывода.
Примеры
В следующем примере кода останавливается указанная очередь.
WdfIoQueueStopSynchronously(WriteQueue);
Требования
Требование | Значение |
---|---|
Целевая платформа | Универсальное |
Минимальная версия KMDF | 1,0 |
Минимальная версия UMDF | 2,0 |
Верхняя часть | wdfio.h (включая Wdf.h) |
Библиотека | Wdf01000.sys (KMDF); WUDFx02000.dll (UMDF) |
IRQL | PASSIVE_LEVEL |
Правила соответствия DDI | ChangeQueueState(kmdf), DriverCreate(kmdf), EvtSurpriseRemoveNoSuspendQueue(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf), NoCancelFromEvtSurpriseRemove(kmdf) |