| Предыдущий | Следующий |
| ERROR_CANT_WAIT | ERROR_UNEXPECTED_MM_CREATE_ERR |
ERROR_CANT_TERMINATE_SELF
Что означает ERROR_CANT_TERMINATE_SELF
ERROR_CANT_TERMINATE_SELF означает, что поток попытался завершить сам себя через механизм, который Windows не разрешает для последнего потока процесса.
Частный случай связан с вызовом NtTerminateThread для текущего потока, когда других потоков процесса уже нет.
Что проверить
- Определите, какой поток инициирует завершение и какой дескриптор передан функции.
- Проверьте логику остановки процесса и порядок завершения рабочих потоков.
- Предпочитайте кооперативную остановку с освобождением ресурсов и обычным возвратом из потока.
- Учитывайте отладчики и слои совместимости, которые могут менять путь завершения.
Принудительное самозавершение может оставить блокировки и состояние процесса несогласованными, поэтому исправлять нужно сам алгоритм завершения.
Технические ссылки
Нужно найти другой код? Найти другой код состояния или ошибки.