bonjour,
quelle sont les différentes actions envisageable pour creer un serveur udp pouvant gérer plusieurs client..
Merci
bonjour,
quelle sont les différentes actions envisageable pour creer un serveur udp pouvant gérer plusieurs client..
Merci
Comme je le disais dans ton topic precedent ...
il faut que tu utilises un nouveau thread quand un client ce connect et que tu delègue la gestion du client a se thread comme cela ton serveur peut se remettre en ecoute et ainsi prendre en charge un nouveau client que tu traitera de maniere similaire.
Si tu veux eviter de trop t'aracher les cheveux avec la gestion de thread, tu peux t'apuyer sur la class executor qui permet de creer un pool fini de thread et qui s'occupe de dispatcher les tache au thread.
++
merci pour cette réponse.
En fait, j'ai déjà un pool de thread qui gère les traitements une fois le paquet reçu afin de pouvoir se remettre en écoute..
Seulement, je n'arrive pas à m'en sortir si dans ce "traitement", il y a une écoute spécifique à faire..
En gros, comment écouter un paquet spécifique due au traitement, tout en continuant d'écouter tout le reste.
dans ce cas precis il te faut un thread de managment global situé entre le serveur et les client qui receptionne l'ensemble des paquets et qui fasse le trie au moment de la reception du paquet avant de creer un nouveau thread pour le client. si jamais le paquet est un paquet attendu par un thread existant tu le transmet au thread qui l'attend sinon tu creer un nouveau thread de managment pour un nouveau client ...
++
Tu veux dire que dans la thread de traitement, il faut faire qq'chose qui "attend" (mais pas un socket.receive()).
Et que la thread qui recoit tout les paquets puisse envoyer le paquet à la thread qui "attend" ?
c'est cela je ferai un thread intermediaire dans lequel passe l'ensembel de tes paquet mais c sur pas un socket.receive() juste une espece de fifo qui lit chaque paquet et qui soit l'oriente correctement soit creer un nouveau thread client si c necessaire ...
Partager