我正在尝试开发一个小型测试应用程序,该应用程序运行一些命令,每隔 X 秒测量一次 CPU 使用率、内存使用率和网络使用率,如 Windows 任务管理器中所示。该应用程序将用 java 编写,并且应该在 windows 和 linux 上运行。我发现很多人使用 Sigar API 来轻松提取系统信息。我发现了如何使用它来提取内存使用情况
Mem mem = sigar.getMem();
mem.getUsed();
我仍然不确定使用的内存和实际使用的内存之间有什么区别,有人可以详细说明一下吗?
此外,我仍然不确定如何提取 Cpu 使用情况和网络使用情况。对于 Cpu,我尝试过:
cpu = sigar.getCpuPerc();
cpu.getCombined();
但数字似乎与我在任务管理器中看到的非常不同。我应该使用哪个 API 来获得所需的结果?对于网络利用率,我不知道。