Bonjour,

Je suis depuis quelques temps confronté à un probleme et je n'arrive pas à mettre le doigt sur la source d'"erreur". J'ai développé recemment un serveur de communication et une bibliothèque cliente basée sur les pipes nommés windows. Le but étant de communiquer en temps réel entre les clients les valeurs de différentes variables dès leur changement.

La problèmatique est que je n'obtiens pas les performances prévues...
En effet le serveur ne réussi à transmettre qu'un message toutes les 30 ms (message et réponse de l'autre client). En regardant le gestionaire de taches, je peux remarquer que le processeur n'est absolument pas sollicité.
Le fait le plus troublant est que si je refais le même test avec une page web en flash ou un exe flash ouvert, les performances sont 10 à 12 fois supérieure!!!

J'ai donc pensé pendant un moment à un ralentissement du à mes traces sur la console (ah oui, les clients et le serveur sont en mode console), en imaginant, que flash pouvait lancer une quelquonque acceleration materielle de l'affichage. Cependant, même en supprimant les traces, le problème persiste. Peut-être est-ce un problème d'ordonnacement? portaant il me semble que mes sections critiques sont protégées au mieux et que les temps de suspension de thread sont minimums...

A titre d'information, les clients ainsi que le serveur sont entièrement développés de manière parallèle:
Le serveur possède 3 threads par client connectés: un qui lit sur le pipe et empile les messages dans une file d'attente, un qui redirige les messages dans la file d'attente d'envoi de message du client destinataire et un qui dépile les messages et les ecrit dans le pipe du destinataire. (architecture classique...)

La bibliothèque possède 2 threads: un qui lit le pipe et empile les messages dans une liste de reception et un qui dépile la liste d'envoi de message et écrit lesdits messages sur le pipe. (classique aussi)

Si une personne a déjà expérimenté ce genre de problème, je suis tout ouie pour les conseils que vous pourriez me donner.

visual'ment,
Yverain.