gpt4 book ai didi

java - jstat:OGC & OC、PGC & PC 的区别

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:19:56 24 4
gpt4 key购买 nike

我正在学习 jstat 以及它可以告诉我有关 JVM 不同代的内容。来自 the jstat docs我知道新一代由伊甸园、s0 和 s1 组成。例如,如果您对以下内容进行数学运算,您会看到 NGC = EC + S0C + S1C。很棒的东西。

$ jstat -gccapacity -t 21830 5000
Timestamp NGCMN NGCMX NGC S0C S1C EC OGCMN OGCMX OGC OC PGCMN PGCMX PGC PC YGC FGC
248767.4 2624.0 87360.0 6656.0 640.0 640.0 5376.0 5376.0 174784.0 12840.0 12840.0 21248.0 131072.0 34304.0 34304.0 457 73
248772.4 2624.0 87360.0 6656.0 640.0 640.0 5376.0 5376.0 174784.0 12840.0 12840.0 21248.0 131072.0 34304.0 34304.0 457 73
248777.3 2624.0 87360.0 6656.0 640.0 640.0 5376.0 5376.0 174784.0 12840.0 12840.0 21248.0 131072.0 34304.0 34304.0 457 73

我想知道它们之间有什么区别:

  • OGC(当前老年代容量(KB))和
  • OC(当前旧空间容量 (KB))。

同样适用于:

  • PGC(当前永久发电容量 (KB))和
  • PC(当前永久空间容量 (KB))。

每一对都具有相同的值(value),至少对我来说是这样。除了旧空间之外,老一代中还有什么吗?


编辑:我认为没有区别,但为了以防万一,我会留下这个问题。

最佳答案

我只是从jdk源码中寻找

简而言之:OGC = sum(所有 OC)

一个 gen 可以包含多个空格。

然而,Hotspot 老一代只有 1 个空间(年轻一代有 3 个: eden , s0 和 s1 ),jstat 为它们显示相同的值。

什么是 OC 和 OGC

来自jdk/src/share/classes/sun/tools/jstat/resources/jstat_options

我得到了

OGC = sun.gc.generation.1.capacity

OC = sun.gc.generation.1.space.0.capacity

  column {
header "^OGC^" /* Old Generation Capacity - Current */
data sun.gc.generation.1.capacity
scale K
align right
width 11
format "0.0"
}
column {
header "^OC^" /* Old Space Capacity - Current */
data sun.gc.generation.1.space.0.capacity
scale K
align right
width 11
format "0.0"
}

第 1 代有多少空间

运行下面的常规代码来检查

import java.lang.management.ManagementFactory
import sun.jvmstat.monitor.*;

name = ManagementFactory.runtimeMXBean.name
pid = name[0..<name.indexOf('@')]
vmId = new VmIdentifier(pid)
vm = MonitoredHost.getMonitoredHost(vmId).getMonitoredVm(vmId, 0)

println 'Y count :' + vm.findByName('sun.gc.generation.0.spaces').longValue()
println 'O count :' + vm.findByName('sun.gc.generation.1.spaces').longValue()

输出是:

Y count :3
O count :1

你可以对 GEN.2 (PERM GEN) 做同样的事情

关于java - jstat:OGC & OC、PGC & PC 的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11253285/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com