And*_*rte 7 java garbage-collection g1gc
在Java 6中,我们曾经使用以下GC配置来防止Perm Gen OutOfMemoryException在我们的应用程序进行多次重新部署之后:
-XX:+UseConcMarkSweepGC -XX:+CMSClassUnloadingEnabled
我们正在转向Java 7,并希望使用新的G1 GC,从我读过的内容中,将类从Java内存中的PermGen移动到本机内存.
是否有一些标志可以卸载未使用的类?
G1在Full GC期间执行类卸载,因此您无需指定任何参数来启用此功能.
您可以使用-XX:+TraceClassUnloading参数自己查看.
另外,从HotSpot GC邮件列表中查看此电子邮件主题:G1GC中的错误,当代码缓存已满时执行完整GC会导致过度杀伤.他们讨论了G1中的类卸载问题.总之,-noclassgc如果您看到类卸载的问题,则可以使用,但通常G1中的类卸载没有问题.