赞
踩
一、CPU使用情况。
- public double getCPUUsage() {
- double cpuUsage = 0;
- try {
- MBeanServerConnection mbsc = ManagementFactory.getPlatformMBeanServer();
- ObjectName name = ObjectName.getInstance("java.lang:type=OperatingSystem");
- AttributeList list = mbsc.getAttributes(name, new String[]{"ProcessCpuLoad"});
- if (list.isEmpty()) {
- return 0;
- }
-
- Attribute att = (Attribute) list.get(0);
- Double value = (Double) att.getValue();
-
- // value为-1表示无法获取CPU使用情况
- if (value == -1) {
- return 0;
- }
-
- cpuUsage = ((int) (value * 1000) / 10.0);
- } catch (Exception e) {
- e.printStackTrace();
- }
- return cpuUsage;
- }
二、系统内存使用情况。
- double memoryUsage = 0;
- try {
- MBeanServerConnection mbsc = ManagementFactory.getPlatformMBeanServer();
- ObjectName name = ObjectName.getInstance("java.lang:type=OperatingSystem");
- AttributeList list = mbsc.getAttributes(name, new String[]{"TotalPhysicalMemorySize", "FreePhysicalMemorySize"});
- if (list.isEmpty()) {
- return 0;
- }
-
- long totalMemory = 0;
- long freeMemory = 0;
-
- Attribute att = (Attribute) list.get(0);
- totalMemory = Long.parseLong(att.getValue().toString());
-
- att = (Attribute) list.get(1);
- freeMemory = Long.parseLong(att.getValue().toString());
-
- memoryUsage = (totalMemory - freeMemory) * 100.0 / totalMemory;
- } catch (Exception e) {
- e.printStackTrace();
- }
- return memoryUsage;
- }
三、JVM使用情况。
- public double getJVMUsage() {
- double jvmUsage = 0;
- try {
- Runtime runtime = Runtime.getRuntime();
- long totalMemory = runtime.totalMemory();
- long freeMemory = runtime.freeMemory();
- long usedMemory = totalMemory - freeMemory;
-
- jvmUsage = usedMemory * 100.0 / totalMemory;
- } catch (Exception e) {
- e.printStackTrace();
- }
- return jvmUsage;
- }
赞
踩
赞
踩
赞
踩
赞
踩
赞
踩
赞
踩
赞
踩
赞
踩
赞
踩
赞
踩
赞
踩
赞
踩
赞
踩
赞
踩
赞
踩
赞
踩
赞
踩
赞
踩
赞
踩
赞
踩
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。