|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : juin 2006 Messages : 6 ![]() |
Bonjour,
j'ai cherché de mon mieux plusieurs heures sur le forum et n'ai rien trouvé donc je me permet de poster cette question. A partir d'un handle ou d'un process id, comme est il possible d'obtenir dans le CPU en % utilisé par une application? Je suis sous VBA (Access ou Excel) et XP. Merci d'avance, Sébastien |
|
|
00
|
|
|
#2 |
|
Inactif
Inscription : décembre 2005 Messages : 3 784 ![]() |
en mesurant avant et après puis en faisant la différence
http://vb.developpez.com/faq/?page=Systeme#ram |
|
|
00
|
|
|
#3 |
|
Invité de passage
![]() Inscription : juin 2006 Messages : 6 ![]() |
Merci, mais en utilisant cela j'ai des infos sur la mémoire, pas réellement sur le CPU n'est ce pas?
En fait l'idée est la suivante: - je lance une tache gourmande en ressource dans une application - pour déterminer quand cette tâche s'achève j'imagine de regarder l'utilisation du CU en % pendant une période disons de 5 secondes. Si celui ci est faible (<10%) alors la tache est finie et je peux passer à autre chose dans le code VBA Merci encore, Sébastien |
|
|
00
|
|
|
#4 |
|
Membre expérimenté
![]() |
Si tu teste sa consommation en RAM et fait une différence avant apres utilisation gourmante est inférieure a un seuil de tolérence, alors continuer...
Une application gourmande en CPU est normalemnt gourmante en RAM...
__________________
N'oubliez pas de mettre le
|
|
|
00
|
|
|
#5 | |
|
Invité de passage
![]() Inscription : juin 2006 Messages : 6 ![]() |
Citation:
Je tente ça de ce pas, merci beaucoup. Sébastien |
|
|
|
00
|
|
|
#6 |
|
Invité de passage
![]() Inscription : juin 2006 Messages : 6 ![]() |
Bon...
je viens de tester. Autant on voit bien quand l'application se met à travailler, (400 Mo de mémoire utilisée) autant quand elle a finit sa tache, le niveau de mémoire utitlisée ne baisse pas et reste toujours au même niveau (400 Mo). Par contre j'ai bien une variation forte de l'utilisation du CPU. C'est pour cette raison que j'essaie de creuser cette piste. Toutes les idées sont les très bienvenues. Merci encore, Sébastien |
|
|
00
|
|
|
#7 |
|
Inactif
Inscription : décembre 2005 Messages : 3 784 ![]() |
tout donne dans ce cas à penser que tu es passé dans la "zone de swap"... ce que tu ne pourras à mon sens jamais mesurer avec efficacité.
Je jurerais presque que tu constates une certaine lenteur inhabituelle de ta machine... |
|
|
00
|
|
|
#8 |
|
Membre régulier
![]() Inscription : juin 2006 Messages : 77 ![]() |
quel est cette tache ?
si c'est toi qui l'a créer pourkoi ne pas lui faire renvoyer 'vrai' lorsqu'elle a finit de s'executer ? |
|
|
00
|
|
|
#9 |
|
Invité de passage
![]() Inscription : juin 2006 Messages : 6 ![]() |
Bonjour,
cette tache c'est une appli qui se lance depuis un menu de Mappoint (une espèce de "brique" en plus en somme). C'est un optimisateur de tournées qui se base sur des "pushpins" de mappoint. Elle n'a pas été écrite par moi. J'arrive à la lancer et à la controler en faisant quelques "Senkeys" en VBA, tout va bien. La seule chose c'est qu'une tournée étant plus ou moins compliquée, l'application met plus ou moins de temps à s'éxécuter. Ayant besoin de ses résultats pour ensuite poursuivre ma macro c'est pour cela que j'étais intéressé à comprendre si elle tournait encore ou non (en % de CPU). Voilà Merci |
|
|
00
|
|
|
#10 | |
|
Inactif
Inscription : décembre 2005 Messages : 3 784 ![]() |
Citation:
Un petit tour par la FAQ, puis reviens si tu n'as vraiment pas trouvé ! |
|
|
|
00
|
|
|
#11 |
|
Invité de passage
![]() Inscription : juin 2006 Messages : 6 ![]() |
J'y vais de ce pas. Par contre je tiens à dire que l'application ne "quitte" pas quand elle a finit et qu'elle n'envoie pas de Msgbox. Elle cesse de mouliner c'est tout.
Merci encore, Sébastien |
|
|
00
|
|
|
#12 | |
|
Inactif
Inscription : décembre 2005 Messages : 3 784 ![]() |
Citation:
Ce que je ferais dans ce cas à ta place : 1) j'ouvrirais le gestionnaire de tâches et listerais soigneusement les processus (pas les applis, mais les processus) 2) je lancerais l'appli en cause et regarderais immédiatement (et les listerais) le nouveaux processus ouverts 3) j'attendrais le temps qu'il faut (longtemps au besoin) pour lister cette fois-ci les processus qui, présents à son lancement, ne le sont plus à la fin, alors que, pourtant toujours ouverte, elle n'effectue plus aucune tâche Une fois "isolés" et "identifiés" ces processus "d'action", je me la jouerais belle avec eux... Je pourrais te passer un code VB pour lister tous les processus (pas seulement les applis en cours).... en disant : - si l'appli est là mais que tel ou tel autre processus n'est plus utilisé, ma foi, ... je ferme l'appli... Cela me parait plus rationnel qu'une "analyse du CPU"... Réfléchis-y et dis... Inutile de préciser que lors de mes tests 1 2 et 3, je m'abstiendrais de lancer quelque autre opération que ce fût... hein ? |
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com