Правило ChangeQueueState (kmdf)

Правило ChangeQueueState указывает, что драйвер WDF не пытается изменить состояние очереди из параллельных потоков или не вызывает изменение состояния DDIs один за другим из одного потока. Функции обратного вызова для изменения состояния очереди: WdfIoQueueStop, WdfIoQueueStopSynchronously, WdfIoQueuePurge, WdfIoQueuePurgeSynchronously, WdfIoQueueDrain, WdfIoQueueDrainSynchronously, WdfIoQueueStopAndPurge и WdfIoQueueStopAndPurgeSynchronously. Если эти DDIs вызываются, когда изменение состояния очереди уже выполняется, это приведет к сбою компьютера или перестанет отвечать на запросы.

Модель драйвера: KMDF

Как тестировать

Во время компиляции

Запустите средство проверки статических драйверов и укажите правило ChangeQueueState .

Выполните следующие действия, чтобы выполнить анализ кода.
  1. Подготовьте код (используйте объявления типов ролей).
  2. Запустите средство проверки статических драйверов.
  3. Просмотр и анализ результатов.

Дополнительные сведения см. в разделе Использование средства проверки статических драйверов для поиска дефектов в драйверах.

Применяется к

WdfDeviceCreateWdfDriverCreateWdfIoQueueCreateWdfIoQueueDrainWdfIoQueueDrainSynchronouslyWdfIoQueuePurgeSynchronouslyWdfIoQueueStopWdfIoQueueStopAndPurgeWdfIoQueueStopAndPurgeSynchronouslyWdfIoQueueSynchronously