ошибка чтения: 0: Ресурс временно недоступен

У меня есть сценарий bash, который несколько раз запрашивает ввод данных пользователем и обрабатывает ввод в фоновом режиме в течение времени, когда ожидается следующий ввод. Я продолжаю получать эту ошибку время от времени.

read error: 0: Resource temporarily unavailable

Я подозревал, что причиной этого могут быть фоновые процессы в моем скрипте, поэтому я попытался поставить ‹ dev/null в конце команд, которые выполняются в фоновом режиме, но это не сильно помогло.

./somescript.sh  >> log.txt & < /dev/null

Любая помощь приветствуется.


person Sharjeel    schedule 20.08.2009    source источник
comment
Я подозреваю, что вы хотели использовать «› /dev/null»   -  person William Pursell    schedule 20.08.2009
comment
Нет ‹ /dev/null правильно. Я следовал этому serverfault.com/questions/49656/   -  person Sharjeel    schedule 20.08.2009


Ответы (2)


Это трудно диагностировать, не зная больше о том, что делает ваша программа, но...

По какой-то причине какая-то часть моего мозга говорит мне, что это исходит от ядра и связано с разветвлением, но я не могу определить причину, по которой я так думаю. Попробуйте запустить свой скрипт и посмотрите, как используется ваша память (процессор тоже, но мне кажется, что это память). Для получения более подробной статистики [чем top] запустите watch -d cat /proc/meminfo и посмотрите, что произойдет, когда вы начнете получать эту ошибку.

person Sam Bisbee    schedule 17.09.2009

Простое перенаправление ошибки на /dev/null помогло мне.

some_function1 2> /dev/null &
some_function2 2> /dev/null &
person Sharjeel    schedule 30.11.2009
comment
Не могли бы вы дать более подробную информацию, я столкнулся с той же проблемой при запуске нескольких команд в файле bash, и я не могу читать. - person CMCDragonkai; 11.11.2013