Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/305.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何显示系统的CPU和ram总使用量?_Java - Fatal编程技术网

Java 如何显示系统的CPU和ram总使用量?

Java 如何显示系统的CPU和ram总使用量?,java,Java,我不想使用Java1.4代码显示CPU使用率百分比和RAM使用率百分比。我在谷歌搜索了它,提供了一些与操作SystemmXbean相关的代码。但java 1.4版本不支持它。因此,请使用java 1.4将代码发送给我。首先,我建议您使用java 6。它支持一切 但如果不是,您就没有纯java解决方案。还有两个: 使用JNI。在这种情况下,您必须为每个受支持的平台编写代码,并在该平台上编译。 运行执行此操作的外部脚本。 使用ps for unix: ps-eo pid、ppid、pcpu、vsiz

我不想使用Java1.4代码显示CPU使用率百分比和RAM使用率百分比。我在谷歌搜索了它,提供了一些与操作SystemmXbean相关的代码。但java 1.4版本不支持它。因此,请使用java 1.4将代码发送给我。

首先,我建议您使用java 6。它支持一切

但如果不是,您就没有纯java解决方案。还有两个:

使用JNI。在这种情况下,您必须为每个受支持的平台编写代码,并在该平台上编译。 运行执行此操作的外部脚本。 使用ps for unix: ps-eo pid、ppid、pcpu、vsize、fname、cmd 根据您的选择,使用JScript或VBScript编写WMI脚本

这是windows的脚本。它使用与unix ps命令相同的格式打印数据

var objWMIService = GetObject("winmgmts:\\\\" + "." + "\\root\\CIMV2");
// get CPU usage per process
var pid2cpu = new Object();
var enumItems = new Enumerator(objWMIService.ExecQuery("SELECT IDProcess, PercentProcessorTime FROM Win32_PerfFormattedData_PerfProc_Process"));
for (; !enumItems.atEnd(); enumItems.moveNext()) {
    var p = enumItems.item();
    pid2cpu[p.IDProcess] = p.PercentProcessorTime;
}
//get process info
enumItems = new Enumerator(objWMIService.ExecQuery("SELECT * FROM Win32_Process"));
for (; !enumItems.atEnd(); enumItems.moveNext()) {
    var p = enumItems.item();
    var cmd = p.CommandLine==null ? p.Name : p.CommandLine;
    var cpu = pid2cpu[p.ProcessID];
    WScript.echo(p.ProcessID + " " + p.ParentProcessID + " " + cpu + " " + (p.VirtualSize / 1024) + " " + p.Name + " " + cmd);
}
将其保存到proclist.js文件中,并作为

cscript proclist.js
我还有一个java包装器,它决定运行哪个命令,读取命令输出并解析它,但这个站点的格式不允许放置这么大的附件。此代码将很快通过我的


所以你们可以订阅博客,也可以在博客上给我写信,我会很快给你们发送这段代码

具体是哪种操作系统?您必须从Java 1.4调用外部程序,您可能必须使用Java 1.4,但您可以调用Java 6程序来实现这一点。