begin process at 2010 03 14 08:25:53
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Réseau / Internet

 > 

Vitesse / WinSock


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Vitesse / WinSock

samedi 21 mai 2005 à 04:22:58 | Vitesse / WinSock

RLBDC

Membre Club
YopYop tlm !

Bien, voilà , étant encore un peu "newbie" dans le C++ , je me suis lancé dans la programmation d'un jeu de pong basique en réseau .

Mon programme fonctionne comme sur des roulettes , sauf qu'il est d'une extrème lenteur .
Le fonctionnement est simple :
C'est le PC serveur qui effectue les calculs de trajectoire de la balle, puis envoie 3 données au PC client :
1) La position du curseur du PC serveur
2) & 3) Les valeurs X et Y de la position de la balle sur l'écran .

Le PC client quant à lui ne fait que lire ces valeurs, affiche la balle et le curseur du PC serveur, et envoie au PC serveur, la position de son curseur.

Comme vous pouvez-le constater, programme "tout simple" .
Le problème c'est qu'il est d'une lenteur apeurante !
Au fur et à mesure que j'ai effectué des tests , je me suis rendu compte que si le PC client coupait la connection, le programme du PC serveur reprenait alors une vitesse digne d'un Athlon XP 2200+

J'en ai donc déduis que les communications serveur / client étaient la cause directe de la lenteur .

Pour tester, j'ai enlevé tous les envoies de données du Serveur vers le Client .. et là le programme serveur plante , alors que je ne vois ABSOLUMENT pas pourquoi  .

Conclusion : soit j'ai rien compris au fonctionnement des socket  , soit le code de mon prog est à ch**r  .

Voici ( en partie ) le code du Serveur : [ Lien ]
Et voici ( en partie ) le code du Client : [ Lien ]

Merci d'avance à qui saura partager ses connaissances



samedi 21 mai 2005 à 11:32:34 | Re : Vitesse / WinSock

minet03

J'ai jeté un oeil sur le code du serveur, et j'en deduit qu'il manque plein de lignes de codes.
Je vais quand même tenter de t'aider. Pour ton serveur, utilise les threads (un pour les calculs, un autre pour l'affichage, et un autre pour envoyer les données).
Ensuite, trouve une période suffisante pour envoyer tes données (genre 200ms). en attendant coupe le threads d'envoi (genre sleep()). Pour le reste je ne vois pas comment d'aider plus pour le moment.

Le CyberMonde nous offre une meilleur qualité de vie
CyberMan.inc The WebSite
samedi 21 mai 2005 à 11:33:56 | Re : Vitesse / WinSock

minet03

Aussi pour l'envoi des données, essay de le mettre en un seul send(), tu mets dansune structure que tu envoi (se sera même plus propre au niveau du code).

Le CyberMonde nous offre une meilleur qualité de vie
CyberMan.inc The WebSite
samedi 21 mai 2005 à 12:18:36 | Re : Vitesse / WinSock

RLBDC

Membre Club
Merci , tu m'as fais découvrir les threads !
Je ne connaissais pas, et après une petite google-recherche, j'ai vu ce que c'est .
En effet , ça peut améliorer la vitesse du jeu
Ceci dit , maintenant il me faut en comprendre le fonctionnement et l'utilisation

Je vais regarder tout ça , thx d'avoir pris un peu de temps pour moi

samedi 21 mai 2005 à 19:59:51 | Re : Vitesse / WinSock

minet03

J'ai trouvé de bon tuto là dessus :
[ Lien ]

Ca donne un bon début

Le CyberMonde nous offre une meilleur qualité de vie
CyberMan.inc The WebSite
dimanche 22 mai 2005 à 18:47:40 | Re : Vitesse / WinSock

RLBDC

Membre Club
Merci bcp , je suis en train d'éplucher ce tutorial ...
Je pense qu'il devrait suffire  Thx



Cette discussion est classée dans : programme, pc, serveur, client, vitesse


Répondre à ce message

Sujets en rapport avec ce message

Aide pour programmation de socket en C sous unix [ par badjess ] Salut a Tous,Je suis un novice en programmation en Socket en sous environnement Linux. Aussi, j'ai essayé de trouver des programmes client serveur sur client/serveur ( comment dedoubler un meme programme en client et serveur) [ par herve_blondel ] salut a tous !je suis entrain de faire un projet de simulateur du protocol RIP et voici ce qui me casse la tete. en fait, sur un poste je dois simuler Client serveur, pc-microcontroleur [ par Nixeus ] Bonjour,Je doit faire communiquer un pc ( windows xp) avec un microcontroleur BECK de type SC12.Je doit donc créer un petit prog client-serveur ( le s application client serveur avec les socket en c [ par zizodev ] Bonjour à tous,mon problème est comment créer une application 'qui demande'.Programme client et autre serveur client  'qui demande' :Pour se connecter programme client serveur [ par titimzora ] bonjour tt le mondej'ai besoin d'un programme permettant l'envoie d'un fichier texte  LIGNE par LIGNE d'un serveur vers un client (communication entre programme socket client/serveur dans seul ficier [ par hanane7575 ] bonjour tout le monde, j'au une ptite problem j'ai deja faire un programme client/serveur qui permet de transfers des fichies a ce niveau la tt passe sockets [ par coucoumiya ] bonjour, moi je travaille avec les sockets sous le procole de transmission TCP/IP. mon client est programmé avec Builderc++ sous windows. mon serveur programme pour communiquer un pc et un téléphone mobile via bluetooth [ par lax01 ] Slt tt le monde!j'aimrai bi1 créer un programme pour mon projet de fin d'étude!!!ce programme consiste à communiquer un PC et un téléphone mobile via Flou absolu [ par alwy ] Bonjour! Je ne savais pas trop où poster mon sujet dans le forum. J'espère que cette place conviendra. J'ai des connaissances générales en C++ (se lim


Nos sponsors


Appels d'offres

Sondage...

CalendriCode

Mars 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,328 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales