在Java中,Runtime.getRuntime.freeMemory()
偶尔会返回一个负数 - 为什么?
忙碌/内存吞噬代码可能会发生更多。
这一定是在其他地方得到了回答,但是我的搜索失败了。
我正在运行Oracle Windows 64位JVM - 1.7.0_80。另外看看OpenJDK,Linux版本 - 1.7.0_85(64位) - 虽然我现在看它,它对maxMemory和totalMemory调用的负面 - freeMemory是正面的。
使用ParNew / ConcurrentMarkSweep垃圾收集器。
答案 0 :(得分:1)
糟糕 - 这有点令人尴尬。
我通过一个将数字保持为INT的工具来监控它 - 因此大数字包裹/变为负数:(
浪费你的时间道歉:(