Atitit. 获取cpu占有率的 java c# .net php node.js的实现
通过wmic接口获取cpu占有率
C:UsersAdministrator.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://blog.csdn.net/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(" ");
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