| Предыдущий | Следующий |
| ETIME | ENAMETOOLONG |
ENOSR
Что означает ENOSR в Linux
ENOSR означает «Исчерпаны ресурсы подсистемы STREAMS». Для условия «Исчерпаны ресурсы подсистемы STREAMS» код ENOSR нужно связывать с первым возвратившим его вызовом и контекстом: сообщение, очередь, STREAMS/IPC-объект или служебный интерфейс.
После отказа, соответствующего «Исчерпаны ресурсы подсистемы STREAMS», сохраните errno немедленно: любой последующий системный или библиотечный вызов может заменить значение. Для ENOSR исходная английская страница также выделяет ENOMEM, ENOBUFS, EMFILE, ENFILE и STREAMS; эти данные полезно записать вместе с return value, потоком и временем события.
Диагностика
- При ошибке «Исчерпаны ресурсы подсистемы STREAMS» (Linux,
ENOSR) запишите тип объекта, команду, размер сообщения, идентификаторы и состояние очереди или потока. - При ошибке «Исчерпаны ресурсы подсистемы STREAMS» (Linux,
ENOSR) проверьте структуру и длину относительно версии интерфейса и фактической архитектуры процесса. - При ошибке «Исчерпаны ресурсы подсистемы STREAMS» (Linux,
ENOSR) установите, существует ли owner/peer и не был ли объект удалён между поиском и операцией. - При ошибке «Исчерпаны ресурсы подсистемы STREAMS» (Linux,
ENOSR) не сводите специализированный статус к общей ошибке ввода-вывода до проверки контракта IPC.
На платформе Linux исправление ENOSR считается подтверждённым, когда исходная операция даёт ожидаемый результат, а отдельный отрицательный тест по-прежнему воспроизводит именно условие «Исчерпаны ресурсы подсистемы STREAMS» без утечки ресурсов и потери первичной диагностики.
Ссылки для ENOSR
Нужно найти другой код? Найти другой код состояния или ошибки.