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

 
Предыдущий Следующий
ERROR_INVALID_TASK_INDEX ERROR_INSTALL_SERVICE_FAILURE

ERROR_THREAD_ALREADY_IN_TASK

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

ERROR_THREAD_ALREADY_IN_TASK означает, что указанный поток уже находится в задаче, к которому код пытается присоединить его повторно.

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

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

Как исправлять

Не маскируйте код как успешное присоединение, если вызывающий слой затем выполнит дополнительный выход. Сделайте состояние членства явным для пары поток/задача или перестройте логику callback так, чтобы повторный вход происходил после штатного выхода. Логируйте ID задачи и ID потока для каждой пары операций.

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


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