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
网友评论