Reutiliser un socket

dragondeglace Messages postés 1 Date d'inscription samedi 3 février 2007 Statut Membre Dernière intervention 7 février 2007 - 7 févr. 2007 à 23:40
StagiaireMsl Messages postés 43 Date d'inscription mardi 19 avril 2011 Statut Membre Dernière intervention 22 avril 2013 - 12 déc. 2012 à 15:59
Voila

J'ai créer un chat client-serveur. Le problème est que quand j'arrête la connexion chez le client et chez le serveur et que je veux relancer une nouvelle connexion ca marche pas, ca me met le message d'erreur
<>
Pourtant j'utilise bien la méthode disconnect(true) pour pouvoir réutiliser le socket mais ça fonctionne tjs pas.
Une idée?

Merci

2 réponses

MrRenard Messages postés 2 Date d'inscription mercredi 14 décembre 2005 Statut Membre Dernière intervention 15 janvier 2008
26 oct. 2007 à 14:52
Je suppose que depuis le temps la solution a ton problème à été résolu, mais pour ceux qui lirai la discussion, pour réutiliser un Socket, il faut utilisé la méthode Disconnect(true) mais aussi mettre l'option ReuseAdress à true comme ceci juste après avoir instancier le socket :
mySocket = new...
mySocket.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.ReuseAddress, true);

il faut également penser à dire au socket d'arrêter l'écoute et l'écriture avec la méthode Shutdown :
...
mySocket.Shutdown(SocketShutDown.Both);
mySocket.Disconnect(true);

Et voilà!

Le Renard.
0
StagiaireMsl Messages postés 43 Date d'inscription mardi 19 avril 2011 Statut Membre Dernière intervention 22 avril 2013 3
12 déc. 2012 à 15:59
Merci MrRenard, même si t'as réponse n'a pas été validé, elle l'est ;)

(Pour ma part, c’était le Shutdown que j'oubliait, mon problème était que j'étais en lecture asynchrone et que je n’arrêtais jamais la lecture.)

Celui qui n expérimente rien ne se trompe qu'une seule fois.
0
Rejoignez-nous