I'm using the Sigar library for Java and I'm getting this error:
A fatal error has been detected by the Java Runtime Environment:
EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x0000000010014ed4, pid=1560, tid=4812
Here you can see the generated error log. (As well as my machine specs)
This happens randomly after the program is running for some hours. Then, it crashes and I can not monitor any parameter (cpu, ram, disk... ) anymore. It is so annoying and makes SIGAR totally useless as you can not trust on whether it is going to crash or not.
I've been reading this two topics about it, but it seems a problem of the library an no proper solutions are proposed (and the library doesn't look to have fixed the error)
There's a guy talking about how to solve it for 64 bits in this answer, but that file is not even available to download. (there's no java/src
folder).
Any idea about how to deal with it? Is it even fixable? If not, which alternatives to Sigar would you suggest me?
In case this is relevant, these are the Sigar functions I'm using in my applications:
- 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();
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…