cs_LA_Tupac
Messages postés305Date d'inscriptionjeudi 29 avril 2004StatutMembreDernière intervention18 janvier 2012
-
5 févr. 2009 à 10:53
cs_LA_Tupac
Messages postés305Date d'inscriptionjeudi 29 avril 2004StatutMembreDernière intervention18 janvier 2012
-
9 févr. 2009 à 10:12
Salut à tous les progueurs !!
J'ouvre ce post pour receuillir des infos sur les techniques de prog reseau sous les jeux videos.
Je bosse actuellement sur un petit Jeu (style mmorpg) mais je viens de perdre la partie reseau de ce projet en faisant un format sauvage.... :-(
J'avais fait un système de threads ou le srv écoutait en TCP, puis balancait deux copies du socket en UDP dans un thread d'écoute et un autre d'envoi. Coté client j'ai fait pareil sauf que le socket TCP servait au connect() pour que le client récupère les infos Socket.
Cette methode à fonctionné mais mal : les personages avançaient par saccades, comme si chaque envoi et reception de packet bloquait le client en attendant le prochain.
Voilà donc deux questions :
-Comment se fait-il que mon prog soit ralenti par les communications alors que tout est séparé en threads??
-Comment vous organisez-vous pour créer ce genre de progs qui communiquent réciproquement en UDP ??
merci à vous
Tup4c
moi : c'est du sata le disque dur ?
stagiaire : non c'est du maxtor.
cs_LA_Tupac
Messages postés305Date d'inscriptionjeudi 29 avril 2004StatutMembreDernière intervention18 janvier 20121 5 févr. 2009 à 15:53
Il semblerait que le secret est d'utiliser les sockets asynchrone.
ils permettent de bufferiser les packets afin de libérer le programe des attentes.
Pour tout vous dire, je pensais que le fait d'utiliser des sockets UDP réglait le soucis.
mais je ne trouve pas de code example pour les utiliser.
ps: ai-je interet à passer mes sockets en TCP (asynchrone bien-sur)
merci.
moi : c'est du sata le disque dur ?
stagiaire : non c'est du maxtor.