我正在运行 JBoss 服务器,以下输出属于 -gcutil 工具。我很好奇这个缩写是什么。
/usr/java/jdk1.7.0_25/bin/jstat -gcutil 47929 S0 S1 E O P YGC YGCT FGC FGCT GCT 0.00 0.00 68.46 100.00 57.08 44539 5829.704 303497 241552.104 247381.808
谢谢
我正在运行 JBoss 服务器,以下输出属于 -gcutil 工具。我很好奇这个缩写是什么。
/usr/java/jdk1.7.0_25/bin/jstat -gcutil 47929 S0 S1 E O P YGC YGCT FGC FGCT GCT 0.00 0.00 68.46 100.00 57.08 44539 5829.704 303497 241552.104 247381.808
谢谢
S0 = 幸存者空间 0 利用率占空间当前容量的百分比。
S1 = 幸存者空间 1 利用率占空间当前容量的百分比。
E = Eden 空间利用率占空间当前容量的百分比。
O = 旧空间利用率占空间当前容量的百分比。
P = 永久空间利用率占空间当前容量的百分比。
YGC = 年轻代 GC 事件的数量。
YGCT = 年轻代垃圾回收时间。
FGC = 完整 GC 事件的数量。
FGCT = 完整的垃圾收集时间。
GCT = 总垃圾收集时间。
请参阅https://docs.oracle.com/javase/7/docs/technotes/tools/share/jstat.html#gcutil_option上的文档
此外,您还可以参考http://www.cs.lafayette.edu/docs/java/tooldocs/share/jstat.html。
稍微扩展@nurselcuk的答案:内存分为堆空间(分配对象)和永久空间P(存储类的字节码。堆空间进一步分为年轻Y和年老/老年代O . 年轻代由伊甸园空间E和两个幸存者空间S0和S1组成。
对象被分配到伊甸园空间。当伊甸园空间用完时,垃圾收集器将活动对象移动到幸存者空间并释放伊甸园空间。
当幸存者空间用完时,垃圾收集器通常会在幸存者空间内移动活动对象。似乎幸存者空间 0 和 1 再次像复制收集器一样工作,其中对象仅分配到一个空间,而另一个保持空闲。当前空间已满时,所有活动对象都被移动到空闲空间,两个空间切换角色。如果一个对象已经被收集了一定次数,它就会被移动到永久空间。
永久空间也是由标记和扫描算法收集的垃圾。