有人说老一代在java虚拟机中占用的空间比年轻一代多,是不是?我没有在互联网上找到任何关于这个主题的文章。
非常感谢任何帮助!
答案 0 :(得分:0)
JVM中代的大小之间的比率是不同因素之间的权衡。
请参阅“Non-Standard Options” of the java
launcher tool:
-Xmn 大小
设置年轻代(托儿所)的堆的初始和最大大小(以字节为单位)。 ...
堆的年轻代区域用于新对象。 GC在该区域比在其他区域更频繁地进行。如果年轻一代的规模太小,那么将会进行大量的小型垃圾收集。如果大小太大,则只会执行完整的垃圾收集,这可能需要很长时间才能完成。 Oracle建议您将年轻代的大小保持在整个堆大小的一半到四分之一。
所以比例不是固定的,而是可调的。它甚至不必是常数,因为您可以使用-XX:NewSize
来设置年轻代的最小和最大尺寸。 -XX:MaxNewSize
。但建议确实要让年轻一代比老一代更小,我希望默认值跟随它。