| Предыдущий | Следующий |
| DRIVER_VERIFIER_DETECTED_VIOLATION_LIVEDUMP | FAST_ERESOURCE_PRECONDITION_VIOLATION |
IO_THREADPOOL_DEADLOCK_LIVEDUMP
Проверка ошибок IO_THREADPOOL_DEADLOCK_LIVEDUMP имеет значение 0x000001C5. Это означает, что пул потоков режима ядра оказался во взаимоблокировке.
Важно
Эта статья предназначена для программистов. Если при работе с компьютером появился синий экран с кодом IO_THREADPOOL_DEADLOCK_LIVEDUMP, см. Устранение ошибок синего экрана.
Параметры IO_THREADPOOL_DEADLOCK_LIVEDUMP
| Параметр | Описание |
|---|---|
| 1 | Номер пула. 0x0: ExPoolUntrusted |
| 2 | Указатель на PEX_WORK_QUEUE |
| 3 | Зарезервировано |
| 4 | Зарезервировано |
Материалы взаимоблокировки IO_THREADPOOL_DEADLOCK_LIVEDUMP
При IO_THREADPOOL_DEADLOCK_LIVEDUMP сохраните live dump целиком, четыре параметра, номер сборки Windows, загруженные модули и последовательность событий до фиксации взаимоблокировки. Запись AllStat задаёт класс зависания пула потоков, тогда как параметры и стек определяют конкретную очередь, объект, драйвер, процессор или экземпляр подсистемы.
Поиск источника взаимоблокировки
- Проанализируйте дамп командой WinDbg
!analyze -v, затем разберите назначение параметров IO_THREADPOOL_DEADLOCK_LIVEDUMP и перепроверьте предположение probably-caused-by по ожидающим потокам. - В хронологии io / threadpool / deadlock / livedump найдите первое аномальное событие: обновление драйвера, изменение firmware, сброс устройства, ошибку хранилища, сообщение Verifier, исчерпание ресурсов либо зависание приложения.
- Не удаляйте сведения о сторонних фильтрах, защитных, дисковых, графических и виртуализационных драйверах, поскольку один из них может удерживать операцию, необходимую пулу потоков.
До повторных перезапусков системы с IO_THREADPOOL_DEADLOCK_LIVEDUMP выгрузите дамп и журнал событий. Устранять нужно ожидание или компонент, указанные стеком и параметрами, а не ориентироваться только на символьную метку.
Нужно найти другой код? Найти другой код состояния или ошибки.