我以前问过这个问题-
What does JVM flag CMSClassUnloadingEnabled actually do?
但是这次有点不同!
如果我用Java启动一个VM
-XX:+CMSPermGenSweepingEnabled
设置标志,将打印以下消息:
请使用CMSClassUnloadingEnabled代替将来启用的CMSpermGensWateringEnabled。
这个
-xx:+cmspermgensweepingabled(已启用)
标记通常用于减轻
PermGen OutOfMemory
但是我有错误
read elsewhere
人们发现,按照上面的建议,他们仍然有这些错误,但坚持
-xx:+cmspermgensweepingabled(已启用)
以及
-XX:+CMSClassUnloadingEnabled
他们的虚拟机在重启之间保持的时间更长。
做
-xx:+cmsclassUnloadingEnabled(已启用)
真正取代
-xx:+cmspermgensweepingabled(已启用)
还是两者都有好处?
提前谢谢
丰富的
PS:我知道Perm-Gen问题的根本原因仍然是类加载器泄漏,这更多的是关于如果我们使用上述选项,JVM会产生的消息。