10
|
jilles de wit · 技术社区 · 15 年前 |
![]() |
1
6
嗯,你用的内存太多了——从声音上看,可能是因为内存泄漏太慢。
您可以尝试使用
要调查它是否是内存泄漏,请指示VM使用
编辑: 正如命运所愿,我在这个问题被问到的第二天,在一个批处理风格的应用程序中,碰巧遇到了这个问题。这不是由内存泄漏引起的,增加堆大小也没有帮助。我所做的实际上是 减少 堆大小(从1GB到256MB)可以使完整的GC更快(尽管更频繁)。嗯,但值得一试。 编辑2: 不是所有的问题都由较小的堆解决…下一步是启用 G1 garbage collector 这似乎比CMS做得更好。 |
![]() |
2
1
98%的内存将在恢复不到2%的内存的同一时间段内进行测量。 很可能没有固定的期限。例如,如果OOM检查将在每1000000个对象实时检查之后进行。所需时间取决于机器。
你很可能无法通过添加
|
![]() |
3
1
简单的答案是没有指定。然而,在实践中,启发式的“有效”,所以它不能是你所假定的两种极端解释中的任何一种。 如果你 真正地 为了找出测量的时间间隔,您总是可以读取OpenJDK 6或7源代码。但我不会费心,因为这帮不了你解决问题。 “最佳”方法是阅读一些关于调优的内容(从Oracle/Sun页面开始),然后小心地“旋转调优旋钮”。它不是很科学,而是问题空间(准确地说 预测 应用程序+GC性能)太难了,因为目前有可用的工具。 |
|
user29759326 · 如何返回递归函数中的最后一个值? 3 月前 |
|
malife89 · 将java中的字符串读取为正确的日期格式 3 月前 |
![]() |
Tim · 在java中,有没有更快的方法将字节数组写入文件? 4 月前 |
![]() |
rudraraj · java中未声明最终变量 4 月前 |
![]() |
Bala Ji · 以下BFS的实施效率如何? 4 月前 |