thread - C++ - Programmation
Marsh Posté le 27-08-2002 à 15:52:23
Faut l'enlever
Marsh Posté le 27-08-2002 à 15:55:32
le pb c'est que au bout de dix thread la becane rame et je pense
que la boucle while(loop){.....} multipliée par n thread bouffe trop de ressource processeur
chipoune
Marsh Posté le 27-08-2002 à 17:26:33
Quel est ton critère de sortie d'attente ?
tu as un thread principal qui Suspend/Resume les autres ?
Marsh Posté le 27-08-2002 à 17:33:32
salut bjone comment vas tu ?
en fait mon thread attend des données en porvenance d'un socket.
pour sa sortie, je détecte si le client est deconnecté et si c'est le cas le message je recois le message onclose.
ensuite je ferme la socket puis je sors de la boucle du thread.
Patrick[FCIL]
Marsh Posté le 27-08-2002 à 17:35:59
ps en utilisant un sleep de 50 ms ca tourne, le cpu n'est plus occupé a fond et j'ai pu effectué le test en lancant 200 connection client simultannée soit 200 threads.
chtipoune
Marsh Posté le 27-08-2002 à 18:39:19
salut il me semblait bien que c'était toa
alors pour moa, je vais ptet dire des conneries:
Mais c'est bien le thread de ton process de l'appli qui balaye les messages non ?
donc pour moi je ferais plustôt un SuspendThread() dans le Thread qui s'occupe du client, et dans le Thread principal qui balaye la queue des messages je feraias un ResumeThread du Thread lié au client au moment ou tu reçois le message...
enfin un truc du genre....
enfin je trouves le sleep un peu bourrin....
je préféres faire une approche par Suspend/Resume ça me parait plus clean... après fo voar les détails...
Marsh Posté le 27-08-2002 à 15:34:01
salut,
j'ai plusieurs thread lancés par une appli.
chaque thread effectue un traitement et possede une boucle d'attente.
ma question est comment faire pour que ma boucle d'attente
ne prenne pas trops de ressources processeurs ?
faut il mettre un Sleep(...) ?
merci
chtipoune