Détecter la vitesse CPU / mémoire / Internet Vitesse en Java?
-
18-09-2019 - |
Question
Est-il possible dans Java pour identifier la vitesse totale de CPU disponibles ainsi que la mémoire totale du système? la vitesse de connexion réseau sur le Web serait également impressionnant.
La solution
Cela dépend vraiment de votre système d'exploitation, puisque Java vous dira petit de la machine sous-jacente. Malheureusement, vous devez utiliser des approches différentes en fonction de votre système d'exploitation.
Si vous êtes sous Linux, jetez un oeil au système de fichiers /proc/cpuinfo
pour plus d'informations CPU. /proc
a généralement une mine d'informations. Réseau (IO) se traduira par la commande ifconfig
.
Si vous êtes sous Windows, un outil utile est Voici une page d'exemples de scripts WMI.
Autres conseils
Peut-être SIGAR peut fournir certaines des choses dont vous avez besoin.
Properties p = System.getProperties();
p.list(System.out);
System.out.print("Total CPU:");
System.out.println(Runtime.getRuntime().availableProcessors());
System.out.println("Max Memory:" + Runtime.getRuntime().maxMemory() + "\n" + "available Memory:" + Runtime.getRuntime().freeMemory());
System.out.println("os.name=" + System.getProperty("os.name"));
essayer ci-dessus
Statistiques de mémoire sont disponibles à partir du Runtime objet . Et jetez un oeil un jconsole, un client graphique qui présente des informations sur une machine virtuelle Java compatible JMX. Il montre beaucoup d'informations, y compris l'utilisation du processeur, de sorte que vous pouvez écrire votre propre client qui accède aussi les informations JMX.