精选圈子榜单优站
编程综合
编程综合
技术
20关注
编程技术记录、分享 ,记录你的编程生活点点滴滴!

获取CPU占用的工具


####这是之前在TCP SERVER里面使用到的一个工具,康云同志帮忙搜索到的,测试中,在Windows和Linux下都有效,这里也顺便记录下来:


package com.nemo.utils;

import java.lang.management.ManagementFactory;
import java.lang.management.OperatingSystemMXBean;
import java.lang.reflect.Method;
import java.math.BigDecimal;

/**
* 获取操作系统信息的工具
* @author nemo
*
*/
public class SystemInfoUtils {

/**
* 获取CPU占用率
* @return
*/
public static String getCpuRatio() {
OperatingSystemMXBean operatingSystemMXBean = ManagementFactory.getOperatingSystemMXBean();
int returnVal = -1;
try
{
Class clazz = operatingSystemMXBean.getClass();
Method method = clazz.getMethod("getSystemCpuLoad");
method.setAccessible(true);
Object objVal = method.invoke(operatingSystemMXBean);
if (objVal != null)
{
double doubleVal = Double.parseDouble(objVal.toString()) * 100; // 百分比运算
returnVal = new BigDecimal(doubleVal).setScale(0, BigDecimal.ROUND_HALF_UP).intValue(); // 四舍五入运算
}
} catch (Exception e)
{
e.printStackTrace();
return -1+"";
}
return returnVal+"";
}
}

</!--!--?----></!--?-->

  • 若文章侵犯了您的权益,请联系我们进行处理。

  • 2016-07-18
  • 1536阅读
评论