jdk1.6内存布局

2024-02-26

我使用的是jdk1.6。我配置了 Xmx=2G,Xms=2G,新尺寸=最大新尺寸=660m

我启用了详细GC。我看到了这一点,但我不明白:

PSYoungGen      total 608256K, used 32440K 
 eden space 540672K, 6% used 
 from space 67584K, 0% used 
 to   space 67584K, 0% used 

根据我的配置YoungGen大小是675840MB。 因为yonGen = Eden + 两个survivor空间,

GC 日志显示我的 YoungGen 大小 = 608256K,这不是我配置的。 另外,如果我添加伊甸园空间和两个幸存者空间,我会得到 540672K + 67584K + 67584K = 675840K

这也是错误的。

但是Eden + 1 Survivor空间= 540672K + 67584K = 675840K,这是我配置的。 那么这是否意味着 YoungGen = Eden + 1 Survivor 空间?我认为有 两个幸存者空间,对吗?

请解释一下。

感谢您


有两个幸存者空间,但在任何给定时间仅使用一个;每当有新生代垃圾收集时,对象就会从一个幸存者空间来回移动到另一个。所以你配置的年轻代空间等于eden空间加上one幸存者空间;另一个基本上只是开销。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

jdk1.6内存布局 的相关文章

随机推荐