你的位置:首页 > Java教程

[Java教程]Atitit. 获取cpu占有率的 java c# .net php node.js的实现


 

Atitit. 获取cpu占有率的 java c# .net php node.js的实现

 

通过wmic接口获取cpu占有率

 

C:\Users\Administrator.ATTILAXPC188>wmic cpu get LoadPercentage

LoadPercentage

71

 

 

注意:平均cpu占用率的计算

我们获取的都是瞬间的cpu占用,需要一段时间内的平均cpu才比较好

/atiplat_cms/src/com/attilax/device/Calcor.java

 

其次,获取的cpu,是总cpu,如果需要精确制导每个核心的占用,也可以使用这个命令的详细版本。

 

此外,这个wmic接口在cpu繁忙的情况下获取不到数值,可能是os的问题。策略。。

作者:: 绰号:老哇的爪子 ( 全名::Attilax Akbar Al Rapanui 阿提拉克斯 阿克巴 阿尔 拉帕努伊 ) 

汉字名:艾提拉(艾龙),   EMAIL:1466519819@qq.com

转载请注明来源: http://www.cnblogs.com/attilax/

 

 

 

降低cpu占用

使用sleep技术最适合。可以变相的控制threadPool任务数量

 

 

public static int getCpuRate() throws CantGetData {

String getCpuRate = "wmic cpu get LoadPercentage";

String ret = CmdX.exec(getCpuRate);

logger.info("--wmic cpu:" + ret);

String[] a = ret.split("\n");

List<String> li = Lists.newArrayList();

for (String string : a) {

String line = string.trim();

if (line.length() == 0)

continue;

li.add(line);

}

String cpu = null;

if (li.size() == 1)

throw new CantGetData(ret);

// String cpu = li.get(li.size() - 1);

// try {

cpu = li.get(1).toString().trim();

 

// } catch (Exception e) {

// throw new

// }

 

return Integer.parseInt(cpu.toString());

}

 

 

参考资料

 

JAVA_ThreadMXBean_API之家,最大的中文API社区.html

JAVA 得到本进程的CPU占用率-CSDN问答.html

(4) java获取cpu使用率_内存使用率_硬盘的使用率_梧桐鹏_新浪博客.html

(5)java怎样获取CPU占用率和硬盘占用率_百度知道.html (good)

atiend