Что означает код errno 60 (ETIMEDOUT)?

 
Также может означать:
КонстантаТипОС
ERROR_BAD_REM_ADAPОшибка WindowsWindows
ENOSTRerrnoLinux
ENOSTRerrnoSolaris
INTERRUPT_UNWIND_ATTEMPTEDКод BSODWindows
Предыдущий Следующий
ENOSTR ENOSTR

ETIMEDOUT

Отсутствие своевременного завершения не является активным отказом

ETIMEDOUT означает, что операция не завершилась до наступления соответствующего тайм-аута. Код отличается от ECONNREFUSED, когда назначение активно отклоняет установление соединения, и от ENETUNREACH, когда локальный стек изначально не имеет маршрута.

Тайм-аут не доказывает, что удалённый узел выключен. Пакеты могут фильтроваться, теряться, задерживаться, идти по отказавшему пути или приниматься другой стороной, которая не завершает ожидаемый приложением обмен. Наблюдаемый системный вызов и политика тайм-аута являются обязательным контекстом.

Что сохранить

  • Запишите тип операции, состояние сокета, локальный и удалённый адреса, время начала, источник срока ожидания и счётчики транспортных повторных передач или повторов приложения.
  • Отличайте транспортный тайм-аут ядра от срока ожидания приложения. Они могут сработать в разное время и назначают ответственность за отмену разным уровням.
  • Сохраните сведения о том, были ли до тайм-аута получены байты или подтверждения протокола; от этого зависит безопасность повторного выполнения операции.

Полезное сравнение

ECONNRESET — явный результат сброса. ETIMEDOUT — отсутствие успешного результата в отведённое время. Эти ошибки требуют разных данных и не должны объединяться в одну категорию «сеть отказала».

Ссылки


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