實例如下:
MemoryMXBean memorymbean = ManagementFactory.getMemoryMXBean(); MemoryUsage usage = memorymbean.getHeapMemoryUsage(); System.out.println("INIT HEAP: " + usage.getInit()); System.out.println("MAX HEAP: " + usage.getMax()); System.out.println("USE HEAP: " + usage.getUsed()); System.out.println("/nFull Information:"); System.out.println("Heap Memory Usage: " + memorymbean.getHeapMemoryUsage()); System.out.println("Non-Heap Memory Usage: " + memorymbean.getNonHeapMemoryUsage()); List<String> inputArguments = ManagementFactory.getRuntimeMXBean().getInputArguments(); System.out.println("===================java options=============== "); System.out.println(inputArguments); System.out.println("=======================通過java來獲取相關系統狀態============================ "); int i = (int)Runtime.getRuntime().totalMemory()/1024;//Java 虛擬機中的內存總量,以字節為單位 System.out.println("總的內存量 i is "+i); int j = (int)Runtime.getRuntime().freeMemory()/1024;//Java 虛擬機中的空閑內存量 System.out.println("空閑內存量 j is "+j); System.out.println("最大內存量 is "+Runtime.getRuntime().maxMemory()/1024); System.out.println("=======================OperatingSystemMXBean============================ "); OperatingSystemMXBean osm = (OperatingSystemMXBean) ManagementFactory.getOperatingSystemMXBean(); // System.out.println(osm.getFreeSwapSpaceSize()/1024); // System.out.println(osm.getFreePhysicalMemorySize()/1024); // System.out.println(osm.getTotalPhysicalMemorySize()/1024); //獲取操作系統相關信息 System.out.println("osm.getArch() "+osm.getArch()); System.out.println("osm.getAvailableProcessors() "+osm.getAvailableProcessors()); //System.out.println("osm.getCommittedVirtualMemorySize() "+osm.getCommittedVirtualMemorySize()); System.out.println("osm.getName() "+osm.getName()); //System.out.println("osm.getProcessCpuTime() "+osm.getProcessCpuTime()); System.out.println("osm.getVersion() "+osm.getVersion()); //獲取整個虛擬機內存使用情況 System.out.println("=======================MemoryMXBean============================ "); MemoryMXBean mm=(MemoryMXBean)ManagementFactory.getMemoryMXBean(); System.out.println("getHeapMemoryUsage "+mm.getHeapMemoryUsage()); System.out.println("getNonHeapMemoryUsage "+mm.getNonHeapMemoryUsage()); //獲取各個線程的各種狀態,CPU 占用情況,以及整個系統中的線程狀況 System.out.println("=======================ThreadMXBean============================ "); ThreadMXBean tm=(ThreadMXBean)ManagementFactory.getThreadMXBean(); System.out.println("getThreadCount "+tm.getThreadCount()); System.out.println("getPeakThreadCount "+tm.getPeakThreadCount()); System.out.println("getCurrentThreadCpuTime "+tm.getCurrentThreadCpuTime()); System.out.println("getDaemonThreadCount "+tm.getDaemonThreadCount()); System.out.println("getCurrentThreadUserTime "+tm.getCurrentThreadUserTime()); //當前編譯器情況 System.out.println("=======================CompilationMXBean============================ "); CompilationMXBean gm=(CompilationMXBean)ManagementFactory.getCompilationMXBean(); System.out.println("getName "+gm.getName()); System.out.println("getTotalCompilationTime "+gm.getTotalCompilationTime()); //獲取多個內存池的使用情況 System.out.println("=======================MemoryPoolMXBean============================ "); List<MemoryPoolMXBean> mpmList=ManagementFactory.getMemoryPoolMXBeans(); for(MemoryPoolMXBean mpm:mpmList){ System.out.println("getUsage "+mpm.getUsage()); System.out.println("getMemoryManagerNames "+mpm.getMemoryManagerNames().toString()); } //獲取GC的次數以及花費時間之類的信息 System.out.println("=======================MemoryPoolMXBean============================ "); List<GarbageCollectorMXBean> gcmList=ManagementFactory.getGarbageCollectorMXBeans(); for(GarbageCollectorMXBean gcm:gcmList){ System.out.println("getName "+gcm.getName()); System.out.println("getMemoryPoolNames "+gcm.getMemoryPoolNames()); } //獲取運行時信息 System.out.println("=======================RuntimeMXBean============================ "); RuntimeMXBean rmb=(RuntimeMXBean)ManagementFactory.getRuntimeMXBean(); System.out.println("getClassPath "+rmb.getClassPath()); System.out.println("getLibraryPath "+rmb.getLibraryPath()); System.out.println("getVmVersion "+rmb.getVmVersion()); 以上這篇在java代碼中獲取JVM參數的方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持武林網。
新聞熱點
疑難解答