美文网首页
sigar获取当前机器的状态

sigar获取当前机器的状态

作者: 李霖神谷 | 来源:发表于2019-12-13 11:44 被阅读0次
    import org.hyperic.sigar.CpuInfo;
    import org.hyperic.sigar.Mem;
    import org.hyperic.sigar.Sigar;
    import org.hyperic.sigar.SigarException;
    
    public class Main {
        public static void main(String[] args) throws SigarException {
            Sigar sigar = new Sigar();
            // CPU数量(单位:个)
            int cpuLength = sigar.getCpuInfoList().length;
            System.out.println(cpuLength);
            //获取cpu信息
            CpuInfo[] infos = sigar.getCpuInfoList();
            for (int i = 0; i < infos.length; i++) {// 不管是单块CPU还是多CPU都适用
                CpuInfo info = infos[i];
                System.out.println("mhz=" + info.getMhz());// CPU的总量MHz
                System.out.println("vendor=" + info.getVendor());// 获得CPU的卖主,如:Intel
                System.out.println("model=" + info.getModel());// 获得CPU的类别,如:Celeron
                System.out.println("cache size=" + info.getCacheSize());// 缓冲存储器数量
            }
            long startTime = System.nanoTime();   //获取开始时间
    
            long endTime = System.nanoTime(); //获取结束时间
    
            System.out.println("程序运行时间: " + (endTime - startTime) + "ns");
            // 物理内存信息
            Mem mem = sigar.getMem();
    // 内存总量
            System.out.println("Total = " + mem.getTotal() / 1024L / 1024 + "M av");
    // 当前内存使用量
            System.out.println("Used = " + mem.getUsed() / 1024L / 1024 + "M used");
    // 当前内存剩余量
            System.out.println("Free = " + mem.getFree() / 1024L / 1024 + "M free");
    
        }
    }
    
    

    相关文章

      网友评论

          本文标题:sigar获取当前机器的状态

          本文链接:https://www.haomeiwen.com/subject/oslfnctx.html