java获取cpu数量,以及cpu使用率(cpu负载)

Java获取cpu数量,cpu使用率


如下是spring-boot监控服务spring-boot-starter-actuator源码中获取cpu个数,cpu使用率的方式.
import com.sun.management.OperatingSystemMXBean;

import java.lang.management.ManagementFactory;

/**
 * @author luckhwb
 */
public class SystemUtil {
    
    private static OperatingSystemMXBean operatingSystemMXBean;

    static {
        operatingSystemMXBean = (OperatingSystemMXBean) ManagementFactory.getOperatingSystemMXBean();
    }

    /**
     * 获取cpu使用率
     * @return
     */
    public static double getSystemCpuLoad() {
        return operatingSystemMXBean.getSystemCpuLoad();
    }

    /**
     * 获取cpu数量
     * @return
     */
    public static int getSystemCpuCount() {
        return Runtime.getRuntime().availableProcessors();
    }

}