我收到java.lang.OutOfMemoryError: PermGen space
,在分析hprof
后,我发现
One instance of "org.apache.jasper.compiler.JspRuntimeContext" loaded by
"org.jboss.mx.loading.UnifiedClassLoader3 @ 0x772dd7f80"
occupies 8,30,89,712 (29.32%) bytes.
The memory is accumulated in one instance of
"java.util.concurrent.ConcurrentHashMap$Segment[]" loaded by
"<system class loader>"
使用 Jboss 服务器。
在以下位置找到类似的:JVM HeapDump: The memory is accumulated in one instance of "java.util.concurrent.ConcurrentHashMap$Segment (但与tomcat有关)
此问题的原因/解决方案是什么?告诉我是否应该提供更多信息。
最佳答案
通过使用 eclipse IDE,您可以更改 VM 参数
double click on the server > open Lunch Configuration > Arguments > VM Arguments
并在 VM Arguments 字段中附加以下两行
-Xms256m -Xmx1024m -XX:+DisableExplicitGC -Dcom.sun.management.jmxremote
-XX:PermSize=256m -XX:MaxPermSize=512m
它一定会解决你的问题
关于java.lang.OutOfMemoryError - "org.apache.jasper.compiler.JspRuntimeContext"的一个实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24261765/