9

在 Java 中是否可以识别可用的总 CPU 速度以及总系统内存?到网络的网络连接速度也很棒。

4

5 回答 5

3

这实际上取决于您的操作系统,因为 Java几乎不会告诉您有关底层机器的信息。不幸的是,您必须根据您的操作系统使用不同的方法。

如果您使用的是 Linux,请查看/proc/cpuinfo文件系统以获取 CPU 信息。/proc一般都有丰富的信息。网络(IO)将通过命令反映ifconfig

如果您在 Windows 上,一个有用的工具是WMI,它提供对各种低级硬件统计信息的访问。您可以通过CScript运行 WMI 脚本。这是 WMI 脚本示例页面。

于 2009-08-19T08:19:29.620 回答
2

也许SIGAR可以提供一些你需要的东西。

于 2009-08-19T07:45:08.443 回答
2
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"));

试试上面

于 2011-03-16T06:47:03.180 回答
0

内存统计信息可从Runtime对象获得。看看 jconsole,它是一个图形客户端,它显示有关启用 JMX 的 Java 虚拟机的信息。它显示了很多信息,包括 CPU 使用率,因此您也可以编写自己的客户端来访问 JMX 信息。

于 2009-08-19T05:31:46.497 回答
-4

JPU可能会给你 CPU。这个链接也可能有帮助

于 2009-08-19T05:18:09.113 回答