Znovu FIFO a blokovani v open()
Michal Krause
mike na navrcholu.cz
Úterý Říjen 19 20:59:39 CEST 1999
Dne 19.10.1999 Pavel Kankovsky napsal
> On Tue, 19 Oct 1999, Michal Krause wrote:
>
> > Socket je na tom relativne lepe, ale je to vyhoda pofiderni - az nejaky
> > proces skonci s timeoutem, hned ho zastoupi jiny.
>
> Da se udelat non-blocking connect a pak se taky da udelat to, ze jakmile
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...
> je pozitivne zjisteno, ze je demon tuhy, tak bude "resuscitovan" pomoci
> volani kill() (no a pres sockety klienti dostanou v teto situaci jasne
> najevo, ze nejsou vitani, protoze connect() selze).
Ano, ale to znamena vybudovat externi kontrolni mechanismus zivosti demona
a tomu jsem se chtel vyhnout.
> > Myslel jsem, ze vliv na to, zda se connect blockne do timeoutu ma
> > nastaveni backlogu (listen), ale budto to nechapu nebo to nefunguje.
> > Predpokladal jsem, ze pokud bude backlog nastaven na hodnotu 1, muze byt
> > jeden pozadavek resen, druhy ve fronte a tretimu by mel connect() vratit
> > ECONNREFUSED. Nebo je to jinak?
>
> Hmmm...ted s tim experimentuji a vypada to, ze aspon u unixovych se zadny
> ECONNREFUSED nekona. Navic se mi podarilo vyloudit zajimavou vec: kdyz
:(
> klient zablokovany v connect() chcipne, tak accept() v serveru uspeje,
> objevi se novy spojeny socket, ale nic se s nim neda delat. Budu muset
> vyzkouset, jestli to delaji i jine verze nez 2.0.36. Pokud by to chtel
> nekdo mermomoci zkouset, tak ma ty programky na konci. Staci prelozit a
> dat server & klient & klient a pak promptne Ctrl+C.
Budto jsem netrefil spravnou dobu na Ctrl+C a nebo se to na 2.2.9 nedeje.
--
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