我可以使用如此大的Eden空间启动JVM,它可以在没有任何GC的情况下运行完成。假设我有一堆免费的mem
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了我可以使用如此大的Eden空间启动JVM,它可以在没有任何GC的情况下运行完成。假设我有一堆免费的mem相关的知识,希望对你有一定的参考价值。
如果我有足够的内存,我可以启动一个Java应用程序(说明为mMven)单独使用Eden空间直到完成没有任何GC吗?
答案
是的但不是Java 8. Java 11将包括Epsilon GC(JEP 318),它不会释放内存。对于任何其他GC并且具有足够大的堆,不需要触发StopTheWorld垃圾收集,但不保证不会发生。
另一答案
是的,我已经在Java 6+中为真正的应用程序做了这个。我开始使用24 GB Eden空间,小型幸存者和终身空间。后来我发现8 GB已经绰绰有余了。
当出现错误或错误时它仍然是GC,但不是正常操作。
我相信选项是
-Xmn24g -Xmx26g -XX:SurvivorRatio = 100
使用默认GC。
该应用程序经过优化,每小时生产不到1 GB,因此使用GC运行一天。
以上是关于我可以使用如此大的Eden空间启动JVM,它可以在没有任何GC的情况下运行完成。假设我有一堆免费的mem的主要内容,如果未能解决你的问题,请参考以下文章