Java获取Linux和Window系统CPU、内存和磁盘总使用率的情况
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
本文由我司收集整编,推荐下载,如有疑问,请与我司联系Java 获取Linux 和Window 系统CPU、内存和磁盘总使用率的情况
2017/05/08 0 这是一个工具类,获取的内容:
CPU 使用率:得到的是当前CPU 的使用情况,这是算出的是两次500 毫秒时间
差的CPU 使用率
内存使用率:[1 - 剩余的物理内存/(总的物理内存+虚拟内存) ] * 100
磁盘总使用率:[1 - 磁盘空余大小/磁盘总大小] * 100
下面开始贴代码:使用暂时没有发现什么问题,如果有问题,咱们可以一起讨论package com.util;
import java.io.BufferedReader;import java.io.File;import java.io.FileInputStream;import java.io.InputStreamReader;import java.io.LineNumberReader;import ng.management.ManagementFactory;import java.math.BigDecimal;import java.util.ArrayList;import java.util.HashMap;import java.util.List;import java.util.Map;import java.util.StringTokenizer;
import org.apache.log4j.Logger;
import com.sun.management.OperatingSystemMXBean;
public class ComputerMonitorUtil {
private static String osName = System.getProperty(“”);private static final int CPUTIME = 500;private static final int PERCENT = 100;private static final int FAULTLENGTH = 10;private static final Logger logger = Logger.getLogger(ComputerMonitorUtil.class);
/** * 功能:获取Linux 和Window 系统cpu 使用率* */public static double getCpuUsage() {// 如果是window 系统if (osName.toLowerCase().contains(“windows”)||osName.toLowerCase().contains(“win”)) {try {String procCmd = System.getenv(“windir”)+“//system32//wbem//wmic.exe process get
Caption,CommandLine,KernelModeTime,ReadOperationCount,ThreadCount,UserModeTi