Java 如何显示系统的CPU和ram总使用量?
我不想使用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命令相同的格式打印数据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
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程序来实现这一点。