Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1390 connectés 

  FORUM HardWare.fr
  Programmation
  C++

  thread

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

thread

n°202926
chtipoune
Posté le 27-08-2002 à 15:34:01  profilanswer
 

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

mood
Publicité
Posté le 27-08-2002 à 15:34:01  profilanswer
 

n°202946
Willyzekid
Posté le 27-08-2002 à 15:52:23  profilanswer
 

Faut l'enlever :D


---------------
Horizon pas Net, reste à la buvette!!
n°202950
chtipoune
Posté le 27-08-2002 à 15:55:32  profilanswer
 

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

n°202985
bb138
La vie est belle ...
Posté le 27-08-2002 à 16:23:01  profilanswer
 

Bof, oui un Sleep(...) peut bien faire l'affaire !

n°203099
bjone
Insert booze to continue
Posté le 27-08-2002 à 17:24:07  profilanswer
 

Sous quoi Win32 ou Unix/Linux ?

n°203105
bjone
Insert booze to continue
Posté le 27-08-2002 à 17:26:33  profilanswer
 

Quel est ton critère de sortie d'attente ?
 
tu as un thread principal qui Suspend/Resume les autres ?

n°203121
chtipoune
Posté le 27-08-2002 à 17:33:32  profilanswer
 

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]  

n°203126
chtipoune
Posté le 27-08-2002 à 17:35:59  profilanswer
 

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

n°203259
bjone
Insert booze to continue
Posté le 27-08-2002 à 18:39:19  profilanswer
 

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...


Message édité par bjone le 27-08-2002 à 18:40:42

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C++

  thread

 

Sujets relatifs
classe anonyme et création de thread à la voléeMulti thread
[VC++]PB de thread[C++] Killer un thread, mais pas comme un gros cochon :o
Threadthread
[JAVA] probleme de thread[Perl] Mémoire partagé en multi-thread
[Java] utilisation de thread[SDL + thread + DLL] Est-il possible de faire un mélange des trois ?
Plus de sujets relatifs à : thread


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR