Clecle0401
Messages postés21Date d'inscriptionsamedi 14 septembre 2002StatutMembreDernière intervention10 juin 2009
-
9 juin 2009 à 14:59
Clecle0401
Messages postés21Date d'inscriptionsamedi 14 septembre 2002StatutMembreDernière intervention10 juin 2009
-
10 juin 2009 à 19:32
Bonjour à tous !!
Je souhaitais savoir si c'était possible de faire un BeginAccept en même temps que BeginReceive dans une socket.
En gros, je voudrais que mon serveur puisse dialoguer (et donc recevoir) des messages d'un client mais en plus, être disponible si un autre client veut se connecter.
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 9 juin 2009 à 23:55
Salut
A moins que les méthodes d'utilisation des sockets aient changées :
- En TCP, non, il te faut un socket dédié à l'écoute et un socket de connexion par client
- En UDP, oui, tu devrais pouvoir recevoir à la volée (Bind) sur un seul socket, mais je pense que pour émettre vers le client de ton choix, il faudra un autre socket mais qui pourra être commun à tous tes clients.
UDP ne garantit pas la remise des messages (pas d'accusé réception du protocole)
Vala
Jack, MVP VB NB : Je ne répondrai pas aux messages privés
<hr />Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
Clecle0401
Messages postés21Date d'inscriptionsamedi 14 septembre 2002StatutMembreDernière intervention10 juin 2009 10 juin 2009 à 19:32
Tout d'abord, merci beaucoup pour ton aide !
Sinon, ben moi je déclare mon socket comme tel :
Dim MySocket As New Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp)
Mais apparemment je ne peux pas juste remplacer par le protocole UDP car je reçois un message d'erreur :
Exception.InnerException. L'erreur est : Le protocole requis n'a pas été configuré dans le système ou aucune implémentation n'existe pour lui
Donc problème...
Mais il n'y a pas besoin d'un multi-thread ou quelque chose comme ça plutôt ?