Что означает код ошибки Windows 555 (ERROR_CANT_TERMINATE_SELF)?

 
Предыдущий Следующий
ERROR_CANT_WAIT ERROR_UNEXPECTED_MM_CREATE_ERR

ERROR_CANT_TERMINATE_SELF

Что означает ERROR_CANT_TERMINATE_SELF

ERROR_CANT_TERMINATE_SELF означает, что поток попытался завершить сам себя через механизм, который Windows не разрешает для последнего потока процесса.

Частный случай связан с вызовом NtTerminateThread для текущего потока, когда других потоков процесса уже нет.

Что проверить

  • Определите, какой поток инициирует завершение и какой дескриптор передан функции.
  • Проверьте логику остановки процесса и порядок завершения рабочих потоков.
  • Предпочитайте кооперативную остановку с освобождением ресурсов и обычным возвратом из потока.
  • Учитывайте отладчики и слои совместимости, которые могут менять путь завершения.

Принудительное самозавершение может оставить блокировки и состояние процесса несогласованными, поэтому исправлять нужно сам алгоритм завершения.

Технические ссылки


Нужно найти другой код? Найти другой код состояния или ошибки.