Что означает код errno 86 (ESTRPIPE)?

 
Также может означать:
КонстантаТипОС
ERROR_INVALID_PASSWORDОшибка WindowsWindows
EBADARCHerrnomacOS
ELIBMAXerrnoSolaris
INSTRUCTION_COHERENCY_EXCEPTIONКод BSODWindows
Предыдущий Следующий
ELIBSCN EBADARCH

ESTRPIPE

Что означает ESTRPIPE в Linux

ESTRPIPE означает «Ошибка канала STREAMS». Для условия «Ошибка канала STREAMS» код ESTRPIPE нужно связывать с первым возвратившим его вызовом и контекстом: сообщение, очередь, STREAMS/IPC-объект или служебный интерфейс.

После отказа, соответствующего «Ошибка канала STREAMS», сохраните errno немедленно: любой последующий системный или библиотечный вызов может заменить значение. Для ESTRPIPE исходная английская страница также выделяет EPIPE, ENXIO, ESPIPE, ENOSTR, STREAMS и FIFO; эти данные полезно записать вместе с return value, потоком и временем события.

Диагностика

  • При ошибке «Ошибка канала STREAMS» (Linux, ESTRPIPE) запишите тип объекта, команду, размер сообщения, идентификаторы и состояние очереди или потока.
  • При ошибке «Ошибка канала STREAMS» (Linux, ESTRPIPE) проверьте структуру и длину относительно версии интерфейса и фактической архитектуры процесса.
  • При ошибке «Ошибка канала STREAMS» (Linux, ESTRPIPE) установите, существует ли owner/peer и не был ли объект удалён между поиском и операцией.
  • При ошибке «Ошибка канала STREAMS» (Linux, ESTRPIPE) не сводите специализированный статус к общей ошибке ввода-вывода до проверки контракта IPC.

На платформе Linux исправление ESTRPIPE считается подтверждённым, когда исходная операция даёт ожидаемый результат, а отдельный отрицательный тест по-прежнему воспроизводит именно условие «Ошибка канала STREAMS» без утечки ресурсов и потери первичной диагностики.

Ссылки для ESTRPIPE


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