当Eden未满时发生轻微的GC。当Eden没有满时,Minor GC的原因是什么?

时间:2016-07-13 16:49:06

标签: java garbage-collection jvm heap heap-memory

我正在使用CMS收集器。

我通过GC日志看到了很少的GC。但是当伊甸园不是百分之百满时,我看到发生了一些小的地方选区。这会发生吗?是否有任何参数/配置可以避免这种情况并使用100%Eden。?

2 个答案:

答案 0 :(得分:1)

你的9.28 GB是5,你有两个幸存者空间。您的伊甸园空间为$('.input-test').datepicker({});body { margin-top: 110px !important; },看起来您使用的不仅仅是这个。看来你的幸存者空间太低了。我建议你把它增加到10或20,你会有更大的伊甸园空间。

答案 1 :(得分:1)

伊甸园已经满了,并不是指占用最后一个字节的一切。

如果您查看GC日志,第一个集合会显示年轻代9857949K->177992K(11684160K)

这意味着年轻一代 9'857'949 kB 占总数 11'684'160 kB 可用( 84.4% )。

随后我们看到9914824K->139689K(11684160K) 84.8%,最后9876521K->115958K(11684160K) 84.5%

因此,年轻一代看起来足够我。鉴于新的对象创建速度,可用的Survivor1和Survivor2空间以及其他因素的数量,完全有可能84%足以开始行动。