Java 獲取系統cpu 內存


原文鏈接:https://blog.csdn.net/CallMeV6/article/details/83176840

說明:獲取的數據是操作系統整體的資源占用情況,不是當前 java進程占用的資源

1. 獲取系統CPU占用情況 :

import java.lang.management.ManagementFactory;
import com.sun.management.OperatingSystemMXBean;
 
private static OperatingSystemMXBean osmxb = (OperatingSystemMXBean) ManagementFactory.getOperatingSystemMXBean();
public static int cpuLoad() {
    double cpuLoad = osmxb.getSystemCpuLoad();
    int percentCpuLoad = (int) (cpuLoad * 100);
    return percentCpuLoad;

}

 

注意:JDK必須是1.8及以上的

           返回的值是CPU的百分比,取的是整數值

 

2. 獲取系統內存占用情況 

import java.lang.management.ManagementFactory;
import com.sun.management.OperatingSystemMXBean;
 
private static OperatingSystemMXBean osmxb = (OperatingSystemMXBean) ManagementFactory.getOperatingSystemMXBean();
public static int memoryLoad() {
    double totalvirtualMemory = osmxb.getTotalPhysicalMemorySize();
    double freePhysicalMemorySize = osmxb.getFreePhysicalMemorySize();
        
    double value = freePhysicalMemorySize/totalvirtualMemory;
    int percentMemoryLoad = (int) ((1-value)*100);
    return percentMemoryLoad;

}

注意:JDK為1.6及以上版本

           返回的值是內存的百分比,取的是整數值

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM