Hi!

Napisal sem si en programcek ki dela nekaj z socketi.. Naenkrat uporablja
vec socketov in za vsak set socketov uporabljam drugi thread.. 
recimo za sprejemanje novih connectionov mi skrbi newcon_th().. ko
se zgodi da postane kak fd neveljaven (da client hangupa) je potrebno
connection dropat.. to pa se ponavadi zgodi v drugem threadu.. 

in kje je problem?? ko poklicem close(s->fd) mi clienta ne odvrze..
v netstatu ostanejo odprte povezave.. ce v telnetu sendas EOF (^D)
in bash exita, ostane telnet odprt se do neskoncnosti.. zmrzne.. the
only solution: ESCchar (^]).. zakaj mi ne prekine? 
obstaja mogoce kaka secret setsockopt opcija za to?

compilam z gcc -D_REENTRANT <sources&objects> -lpthread.. je to ok?

fd je pravilen, in tudi close je sigurno poklican.. in ce takoj za tem
se enkrat poklicem close, mi javi da je fd ze closean...

sourceja v tem trenutku se ne dam ven.. bo pa publishan ko bom
rabil beta test crew..

tnx
        Mitja

Reply via email to