Znovu FIFO a blokovani v open()

Michal Krause mike na navrcholu.cz
Úterý Říjen 19 22:20:51 CEST 1999


Dne 19.10.1999 Mikulas Patocka napsal

> >Zkratka sikla by se nejaka casovana asynchronni udalost, jina nez signal.
> 
> A co takhle to udelat takhle: konzument fifo otevre jednou pro cteni a
> jednou pro zapis. S tim handlem pro zapis nebude nic delat, ale
> zabrani to zavreni fifa, pokud je vsichni producenti zavrou. Konzument
> nebude zavirat fifo, bude je drzet otevrene porad. Producenti ho
> otevrou s O_NONBLOCK a pokud se to nepovede, je jasne, ze konzument je
> mrtvy.

Musel bych to vyzkouset, ale neni mi jasne, jak otevrit FIFO dvakrat - na
prvnim otevreni se to prece blokne, ne? Zrejme by musel ten proces
odforkovat potomka, ktery by drzel handle pro zapis.

A nebo mozna jednoduse, i kdyz ne tak elegantne, spoustet konzumenta ze
skriptu nejak takhle:

cat > FIFO &
konzument

-- 
S pozdravem

Michal Krause                                                      /\
ICQ: 7665279            Informace (nejenom) ze sveta Linuxu     /\/  \
email: mike na navrcholu.cz ______ http://www.root.cz/ ______ NAVRCHOLU.cz

Co napsat do signatury, aby to nikoho nepohorsilo? Snad jedine nejakou
obecne znamou pravdu. Doufam, ze vsichni vite, ze tucnak je bylozrava ryba. 



Další informace o konferenci Linux