【发布时间】:2010-11-26 11:33:06
【问题描述】:
我在执行JUnit 测试时收到此错误消息:
java.lang.OutOfMemoryError: GC overhead limit exceeded
我知道OutOfMemoryError 是什么,但 GC 开销限制是什么意思?我该如何解决这个问题?
【问题讨论】:
-
这听起来很有趣。如果有人可以发布一些生成此代码的代码,我会很高兴。
-
我只是发现了问题,导致内存使用过多,接近堆的限制。一个简单的解决方案可能是简单地为 Java 引擎 (-Xmx) 提供更多堆内存,但这仅在应用程序需要与之前设置的堆限制一样多的内存时才有帮助。
-
@SimonKuang 请注意,有多个
OutOfMemoryError场景增加堆不是一个有效的解决方案:用完本机线程和用完 perm gen(与堆分开)是两个例子。小心不要对OutOfMemoryErrors做出过于宽泛的陈述;可能导致它们的原因有很多出乎意料的多样性。 -
你是怎么解决这个问题的??
-
使用 Jdk1.8.0_91 时发生了这个错误,并且仍然发生在我身上
标签: java garbage-collection out-of-memory heap-memory