我是GC的新手,所以我想就我的应用程序为何在GC中花费这么多时间有第二意见。根据我对这些日志的理解:
[GC[DefNew: 546176K->546176K(614400K), 0.0000340 secs][Tenured: 1317048K->1316223K(1365376K), 4.3852130 secs] 1863224K->1316223K(1979776K), [Perm : 69684K->69684K(69696K)], 4.3853350 secs] [Times: user=4.39 sys=0.00, real=4.39 secs]
[GC[DefNew: 546176K->546176K(614400K), 0.0000460 secs][Tenured: 1316223K->1317346K(1365376K), 5.2960840 secs] 1862399K->1317346K(1979776K), [Perm : 69684K->69684K(69696K)], 5.2962270 secs] [Times: user=5.29 sys=0.00, real=5.30 secs]
[GC[DefNew: 546176K->546176K(614400K), 0.0000270 secs][Tenured: 1317346K->1317499K(1365376K), 4.4173580 secs] 1863522K->1317499K(1979776K), [Perm : 69684K->69684K(69696K)], 4.4175090 secs] [Times: user=4.42 sys=0.00, real=4.42 secs]
[GC[DefNew: 546176K->546176K(614400K), 0.0000490 secs][Tenured: 1317499K->1317540K(1365376K), 4.3927550 secs] 1863675K->1317540K(1979776K), [Perm : 69684K->69684K(69696K)], 4.3929240 secs] [Times: user=4.40 sys=0.00, real=4.39 secs]
我的瓶颈是Tenured Generation,它很大(超过1GB),因此收集时间超过4s。我对吗?它的大小不会减少的事实会影响收集持续时间吗?这是(Tenured Generation的相对大小)我应该关注的任何事情吗?