Что означает код errno 11 (EAGAIN)?

 
Также может означать:
КонстантаТипОС
ERROR_BAD_FORMATОшибка WindowsWindows
KERN_ALREADY_IN_SETКод возврата ядра macOSmacOS
ippStsResFloorСтатус Intel IPPЛюбая
EAGAINerrnoLinux
EDEADLKerrnomacOS
EAGAINerrnoWindows
NO_EXCEPTION_HANDLING_SUPPORTКод BSODWindows
Предыдущий Следующий
EDEADLK EAGAIN

EAGAIN

Временная нехватка ресурсов или неблокирующий ввод-вывод

В Solaris EAGAIN имеет значение errno 11. Основное сообщение: Ресурс временно недоступен, однако полезный диагностический контекст уже короткого сообщения: операция Solaris не могла продолжиться немедленно и должна быть повторена после освобождения ресурса.

Для EAGAIN сначала используйте таблицу errno Solaris, а с POSIX сравнивайте только переносимое поведение. Некоторые значения Solaris имеют те же имена, что и в других UNIX-системах, но другие номера или более узкое историческое значение.

Что проверить для EAGAIN

  • Определите, относится ли вызов к неблокирующему сокету, STREAMS, блокировкам файлов, созданию процесса или выделению памяти.
  • В циклах обработки событий ожидайте соответствующее событие готовности вместо повторов в плотном цикле.
  • При нехватке ресурсов процессов или памяти соберите данные об управлении ресурсами, swap, LWP и таблице процессов до изменения логики приложения.

Ссылки для EAGAIN


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