cs_kawito
Messages postés24Date d'inscriptiondimanche 20 juillet 2003StatutMembreDernière intervention13 décembre 2005
-
18 déc. 2003 à 18:50
vidarusny
Messages postés31Date d'inscriptionlundi 24 février 2003StatutMembreDernière intervention 3 décembre 2009
-
20 déc. 2003 à 22:14
Bonjour,
j'ai fais un client serveur TCP qui doit gerer n connexions(win32 c++) winsowk1.1.
le serveur gere les connexions a travers un thread accept
qui lance dynamiquement des thread de reception de chaque nouveau client.
en image (en esperant qu'elle s'affiche?):
l'echange des info a la connexion d'un client se passe bien,
mais lorsque que le serveur envoie un message, les clients connectée recoivent 1 message sur 2.
par contre les clients envoie a coup sur leur messages au serveur, mais une fois sur deux au autre clients connectés.
je perd donc des messages qui pourtant sont envoyés sans erreurs et de la bonne longueur ?
mais ce message n'arrive jamais au client !
je pense que cela vient des send a suivre qui foute le bordel
je resume:
s'il le faut ? ,lorsque je fais des envoie depuis le processus principal ,pas de probleme,mais je ne peut pas faire de recv() dans le processus principal car le thread de reception et deja en attente d'une donnée ?
j'ai bien essayer de mettre le thread en pause,
puis faire mes send et mes recv,puis de le relancer,mais pas mieux!
vidarusny
Messages postés31Date d'inscriptionlundi 24 février 2003StatutMembreDernière intervention 3 décembre 2009 20 déc. 2003 à 22:14
En voila une explication bien longue. Pour la réponse (je suis pas sûre d'avoir tous compris), oui il faut respecter les send et les recv, mais la question est quel mode utilise? Bon a priori je dirait un mode connecter, si tels est le cas lorsque ton client demande une connection a ton serveur, il ne peut plus se connecter à un autre serveur tant que tu n'a pas libérer la connection (idem poiur le serveur!).
En clair qu'en un client et un serveur se "parlent" il n'entende rien d'autre, ce qui peut effectivement expliquer que des message soit perdu (quoique c'est un problème qui est plus habituel dans le mode déconnecter)
enfin tu peut avoir plus d'explication à cette adresse :
http://www.themanualpage.org/reseau/reseau_concepts.php3
Voila si c'est pas ca alors c'est la gestion de ton thread.