Zavirani socketu
Michal Krause
michal na krause.cz
Sobota Duben 14 17:41:27 CEST 2001
Zdravim,
vyvstal mi tu takovy zajimavy problem. Mam aplikaci, ktera stahuje pres
HTTP pomerne znacne mnozstvi dokumentu z ruznych serveru. Paklize je
odpovedi redirect, stahuje se i stranka, na niz presmerovani vede. Neni
pouzito HTTP 1.1 a KeepAlive, takze kazdy pozadavek znamena nove
zalozeni socketu, volani connect(), odeslani requestu, cteni odpovedi a
nakonec zavreni socketu pomoci close(). Cela aplikace je jednoprocesova
a vice spojeni je zpracovavano asynchronne pomoci non-blocking operaci.
Potiz je v tom, ze se mi nekdy (vice mene nahodne) stane, ze druhy
connect po presmerovani vrati chybu EISCONN, ackoliv je zcela
stoprocentne volan az _po_ uzavreni predchoziho socketu pomoci close().
Vedel by nekdo, v cem muze byt problem, pripadne jak tomu zabranit?
S pozdravem
--
Michal Krause /\
ICQ: 7665279 Informace (nejenom) ze sveta Linuxu /\/ \
email: michal na krause.cz _______ http://www.root.cz/ _______ NAVRCHOLU.cz
Vseci by chceli byt van Goghmi, ale odrezat si ucho ani jeden.
J. Raz ve filmu Rabaka
Další informace o konferenci Linux