Скажем, у меня есть именованный канал:
mypipe="foobar"
mkfifo $mypipe
... позже скажу, что хочу написать на него
echo "foo" > $mypipe
если никто не слушает, я почти уверен, что этот эхо-вызов просто зависает. Есть ли способ определить, читает ли кто-нибудь из канала, прежде чем я сделаю эхо-вызов?
fuser
и вызовомecho
, у вас все еще есть та же проблема. Проверка с помощьюfuser
, позволяющая избежать тайм-аутов дляecho
в большинстве случаев, является допустимой оптимизацией, но вам все равно придется справляться с возможностью зависанияecho
. - person tripleee   schedule 04.03.2018