Znovu FIFO a blokovani v open()
Pavel Kankovsky
peak na argo.troja.mff.cuni.cz
Úterý Říjen 19 21:17:02 CEST 1999
On Tue, 19 Oct 1999, Michal Krause wrote:
> Jenze non-blocking connect je pro me to same jako non-blocking open() na
> FIFO. Z duvodu, ktere jsem popisoval v nekterem z minulych mailu mam
> strach z toho, ze bude dochazet ke ztratam...
non-blocking connect() je operace takova, ze se pusti a pak se ceka, az
skonci (nebo az nam dojde trpelivost a skoncime ji sami zavrenim socketu)
> Ano, ale to znamena vybudovat externi kontrolni mechanismus zivosti demona
> a tomu jsem se chtel vyhnout.
pro "heavy-duty" aplikaci to ale neni spatny napad testovat prubezne
jeji funkcnost
krome toho existuje jedno okamzite dostupne kriterium selhani...kdyz
nedojde k obslouzeni urciteho prahoveho mnozstvi klientu (v casovem
limitu)
> Budto jsem netrefil spravnou dobu na Ctrl+C a nebo se to na 2.2.9 nedeje.
druhy klient musi byt zabit, kdyz ceka v connect(), ale je dost
pravdepodobne, ze 2.2 se chova jinak, protoze je dost prekopana
> Vazne? Mel jsem za to, ze flag O_NONBLOCK lze jenom zapnout a nikoliv
> vypnout.
fcntl() flagy prenastavuje, takze je dokaze jak nahodit, tak shodit
--Pavel Kankovsky aka Peak [ Boycott Microsoft--http://www.vcnet.com/bms ]
"Resistance is futile. Open your source code and prepare for assimilation."
Další informace o konferenci Linux