我不想使用java 1.4代码以百分比和RAM使用百分比显示CPU使用率。我在谷歌搜索它提供了一些与OperatingSystemMXBean
相关的代码。但它在java 1.4版本中不受支持。所以请使用java 1.4向我发送代码。
答案 0 :(得分:0)
首先,我建议你转向java 6.它支持一切。
但如果不是你没有纯粹的java解决方案。还有2个人:
根据您的选择编写WMI脚本(在JScript或VBScript中)。
这是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包装器决定运行哪个命令,读取命令输出并解析它,但是这个站点的格式不允许放置这么大的附件。此代码即将通过我的blog
提供所以你可以订阅博客或者写博客,我会尽快给你发这个代码。