Comment récupérer les Pid de tous les Processus Qui tourne dans le PC
controlleur
Messages postés69Date d'inscriptionmercredi 27 janvier 2010StatutMembreDernière intervention16 avril 2013
-
14 févr. 2012 à 15:47
Utilisateur anonyme -
26 févr. 2012 à 19:00
Bonjour
j'ai utilisé la classe "Class ProcState" cette classe me permet juste de récupérer que le PID du programme qui en train de tourner , puisque je travail sous Eclipse il me retourne le PID de Eclipse .
moi dans mon application je voudrai récupérer tous les PIDs des Processus pour que je puisse afficher leur pourcentage d'utilisation du CPU
cs_Julien39
Messages postés6414Date d'inscriptionmardi 8 mars 2005StatutModérateurDernière intervention29 juillet 2020369 14 févr. 2012 à 16:21
Bonjour,
Java n'est pas un langage système. Tu ne peux pas accéder directement aux informations de ton OS en java. Pour accéder à ces informations, tu peux lancer une commande shell (sous unix ou linux) ou une commande dos (sous windows) grâce à la classe Runtine.
Sous linux : commande ps et sous windows : commande TASKLIST.
controlleur
Messages postés69Date d'inscriptionmercredi 27 janvier 2010StatutMembreDernière intervention16 avril 2013 14 févr. 2012 à 16:27
Merci Julien pour ta réponse .
on faite le résultat que j'ai trouvé c'est en utilisant un Shell : voici la partie de mon code
mais par contre je n'ai aucun idée comment utilisé la commande TASKLIST avec mon petit programme
Merci d'avance .
long[] pids = Shell.getPids(sigar1,args);
for (int i1=0; i1<pids.length; i1++)
{
System.out.println("pids \t : "+pids[i1]);
long pid = pids[i1];
String cpuPerc = "?";
List info = Ps.getInfo(sigar1, pid);
try {
ProcCpu cpu = sigar1.getProcCpu(pid);
Cpu cpu1= sigar.getCpu();
cpuPerc = CpuPerc.format(cpu.getPercent());
Je suis du même avis. D'autant plus que je cherche ce genre de classes Java capables d'exécuter des commandes UNIX (du genre appels de programmes externes avec une ligne de commande plus pou moins digeste). Je n'ai pas encore trouvé ça sur le forum pour l'instant, ça ne serait pas impossible que je poste un sujet dans quelques jours^^