我正在使用用于 Java 的 Sigar 库,但出现此错误:
Java 运行时环境检测到致命错误:EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x0000000010014ed4, pid=1560, tid=4812
在这里您可以看到生成的错误日志。(以及我的机器规格)
这在程序运行几个小时后随机发生。然后,它崩溃了,我无法再监控任何参数(cpu、ram、disk...)。这太烦人了,而且让 SIGAR 完全没用,因为你不能相信它是否会崩溃。
我一直在阅读这两个主题,但似乎是图书馆的问题,没有提出适当的解决方案(而且图书馆看起来没有修复错误)
在这个答案中有一个人在谈论如何解决 64 位问题,但该文件甚至无法下载。(没有java/src
文件夹)。
关于如何处理它的任何想法?它甚至可以修复吗?如果不是,您会建议我使用哪些 Sigar 替代品?
如果这是相关的,这些是我在我的应用程序中使用的 Sigar 函数:
- new Sigar();
- Sigar.getProcCpu();
- Sigar.getCpuList();
- new ProcessFinder();
- ProcessFinder.find();
- new ProcCpu();
- ProcCpu.gather();
- new ProcMem();
- ProcMem.gather();
- ProcMem.getResident()
- ProcCpu.getTotal();
- ProcCpu.getLastTime();
- Sigar.getMem();
- Mem.getActualFree();
- Mem.getActualUsed();
- Mem.getFree();
- Mem.getRam();
- Mem.getTotal();
- Mem.getUsed();
- Mem.getUsedPercent();
- new FileSystemUsage();
- FileSystemUsage.getFree();
- FileSystemUsage.getUsed();