cs_satellite34
Messages postés688Date d'inscriptionmercredi 6 avril 2005StatutMembreDernière intervention 2 juin 2006
-
13 avril 2006 à 17:34
cs_satellite34
Messages postés688Date d'inscriptionmercredi 6 avril 2005StatutMembreDernière intervention 2 juin 2006
-
14 avril 2006 à 00:08
salut,
voila, je dev une appli multithread avec wxWidgets, j'ai 2 threads qui roulent séparément, un avec un sleep de 100ms et un autre 20ms, pourquoi diable ces threads consomment a eux seul 20% de cpu et pourquoi le rundll32.exe ds le gestionnaire des taches prends pareil en cpu, a peu prés 20% ????
voila comment je code mes threads, j'en met qu'un mais le 2e est du meme type :
voila, du coup mon apli prends 60% cpu en comptant rundll32.exe, ce qui est beaucoup trop a mon gout, car de plus je dessine avec RenderSpectrum, ce qui n'ameliore pas la donne.......
Si vous avez des idées ou si quelque chose cloche dans ce code........
PS:mon pc est une merde, DELL dimension celeron 2.4ghz avec 256 de ram, mais est-ce bien normal?
fredcl
Messages postés547Date d'inscriptionmercredi 8 janvier 2003StatutMembreDernière intervention 7 octobre 20071 13 avril 2006 à 19:24
Bonjour,
ça doit venir de ta façon de coder tes threads, car j'ai testé le
client FTP qui me sert de base pour le tutoriel (que je viens de mettre
en relecture)
et la différence est minime (entre un et cinq % de différence) quand il est lancé avec un téléchargement en cours.
cs_Xaviou
Messages postés154Date d'inscriptiondimanche 1 avril 2001StatutMembreDernière intervention 2 octobre 20091 13 avril 2006 à 21:05
Salut,
As-tu pensé, dans ta fonction "CRenderThread::RenderSpectrum(wxDC &dc)" , à mettre un dc.BeginDrawing() avant de faire ton rendu, et à mettre un dc.EndDrawing() lorsque le rendu est terminé ?
cs_satellite34
Messages postés688Date d'inscriptionmercredi 6 avril 2005StatutMembreDernière intervention 2 juin 20061 14 avril 2006 à 00:06
xaviou---> aucun proble du coté du dc;
en fait j'ai réussi et c'etait pas dans les threads que le pb se posait mais ds un thread de l'api FMOD ( rien a voir );
sinon, ben c'est clair que je trouve que le dc est trés gourmand dés lors qu'on rempli plus de la moitié de la zone, je trouve ca génant car je tourne a 25ms pour le rendu;
si j'affiche des lignes les performances sont correctes mais avec des points c'est gourmand, et je suis obligé d'utiliser des points pour avoir un dégradé, donc je fais comme l'affichage de mon spectrum (cf sources), mais ca ne me convient pas.
Un wxGLCanvas serait plus aproprié pour du rendu véloce?
cs_satellite34
Messages postés688Date d'inscriptionmercredi 6 avril 2005StatutMembreDernière intervention 2 juin 20061 14 avril 2006 à 00:08
ha, fredcl ----> j'ai quand meme modifié ma maniere de sortir des threads et j'arrive a des perfs correctes sur les threads : les 2 en meme temps , sans le rendu graphique 7-- 10 % cpu, je pense que c'est ca non?pour une machine comme moi bien sur
Sinon, ben j'aimerai bien voir la partie des threads en avt premiere lol;