OVH Cloud OVH Cloud

comment savoir si une socket est vient detre fermé

2 réponses
Avatar
dark poulpo
bonjour,
je sais pas si c ici ou pas qu'il faut que je demande, mais voila jai un
probleme.
jai des echanges de donnees entre un serveur web sur le port http et mon
client, mais le probleme,c que les pages html envoyé sont dynamique.

mon probleme est que je voudrais savoir à un instant T si une connection
vient d'etre fermée, actuellement justilise un timeout par select(), mais ca
moblige a attendre le timeout pour commencer un traitement.
donc ya t'il un moyen de connaitre si le socket est ferme ou pas?

merci d'avance

2 réponses

Avatar
Arnaud Debaene
dark poulpo wrote:
bonjour,
je sais pas si c ici ou pas qu'il faut que je demande, mais voila jai
un probleme.
jai des echanges de donnees entre un serveur web sur le port http et
mon client, mais le probleme,c que les pages html envoyé sont
dynamique.

mon probleme est que je voudrais savoir à un instant T si une
connection vient d'etre fermée, actuellement justilise un timeout par
select(), mais ca moblige a attendre le timeout pour commencer un
traitement.
donc ya t'il un moyen de connaitre si le socket est ferme ou pas?



WSAEventSelect avec FD_CLOSE. Attention que WSAEventSelect met la socket en
mode non bloquant. Il faut la remettre en mode bloquant si tu veux continuer
à travailler dans ce mode.

Arnaud
Avatar
Dominique Vaufreydaz
Bonjour,

WSAEventSelect avec FD_CLOSE. Attention que WSAEventSelect met la socket en
mode non bloquant. Il faut la remettre en mode bloquant si tu veux continuer
à travailler dans ce mode.



Sinon, lors du READ, tu as une erreur et cette erreur t'indique si la connection est
fermee.

Doms.
--
Impose ta chance, serre ton bonheur et va vers ton risque.
A te regarder, ils s'habitueront.
René Char, Les Matinaux.
----
http://Dominique.Vaufreydaz.free.fr/
http://TitchKaRa.free.fr/
http://logiciels.ntfaqfr.com/