我一直在运行我的应用程序,初始化和最大值都设置为 256Mb。所以过了一段时间我注意到我准备好了 2 GC。下面是我设法捕获我的 jstat 的片段。我想知道通常是什么导致老一代增长,一旦它满了,我们就可以正确地获得完整的 GC。我没有将初始化和最大内存都设置为 512 Mb。我还必须根据世代值进行其他调整吗?
2752448.4 0.00 61.25 99.06 51.71 44.17 4613 235.614 2 0.429 236.044
2752453.4 0.00 61.25 99.73 51.71 44.17 4613 235.614 2 0.429 236.044
2752458.3 69.74 0.00 0.44 51.72 44.17 4614 235.630 2 0.429 236.059
2752463.3 69.74 0.00 1.31 51.72 44.17 4614 235.630 2 0.429 236.059
2752468.4 69.74 0.00 2.67 51.72 44.17 4614 235.630 2 0.429 236.059
^Z
[2]+ Stopped ./jstat -gcutil -t 1824 5s
[root@localhost bin]# ./jstat -gcutil -t 1824 5s
Timestamp S0 S1 E O P YGC YGCT FGC FGCT GCT
2752472.6 69.74 0.00 3.67 51.72 44.17 4614 235.630 2 0.429 236.059
2752477.6 69.74 0.00 5.38 51.72 44.17 4614 235.630 2 0.429 236.059
2752482.6 69.74 0.00 7.51 51.72 44.17 4614 235.630 2 0.429 236.059
2752487.6 69.74 0.00 9.52 51.72 44.17 4614 235.630 2 0.429 236.059
2752492.6 69.74 0.00 10.55 51.72 44.17 4614 235.630 2 0.429 236.059