【发布时间】:2010-10-28 01:59:32
【问题描述】:
我已将 java 配置为将垃圾收集信息转储到日志中 (verbose GC)。我不确定日志中的垃圾收集条目是什么意思。这些条目的示例发布在下面。我在Google 上进行了搜索,但没有找到可靠的解释。
我有一些合理的猜测,但我正在寻找能够严格定义条目中数字含义的答案,并得到可靠来源的支持。对引用 sun 文档的所有答案自动 +1。我的问题是:
- PSYoungGen 指的是什么?我认为这与上一代(年轻?)有关,但究竟是什么?
- 第二个三元组和第一个有什么区别?
- 为什么为第一个三元组指定了名称 (PSYoungGen) 而不是第二个?
- 三元组中的每个数字(内存大小)是什么意思。比如109884K->14201K(139904K),就是GC前的内存109884k,然后降到14201K。第三个数字有什么关系?为什么我们需要第二组数字?
8109.128: [GC [PSYoungGen: 109884K->14201K(139904K)] 691015K->595332K(1119040K), 0.0454530 秒]
8112.111: [GC [PSYoungGen: 126649K->15528K(142336K)] 707780K->605892K(1121472K), 0.0934560 秒]
8112.802: [GC [PSYoungGen: 130344K->3732K(118592K)] 720708K->607895K(1097728K), 0.0682690 秒]
【问题讨论】:
-
整个堆,堆的年轻代部分,次要 gc 了解 gc 的工作原理,例如检查cubrid.org/blog/dev-platform/…
标签: java logging garbage-collection