1. 程式人生 > >理解GC日誌

理解GC日誌

png 虛擬機 相關 而不是 老年代 理解 含義 占用 時間

閱讀GC日誌是處理Java虛擬機內存問題的基礎技能,它只是一些人為確定的規則,沒有太多的技術含量。

每一種收集器的日誌形式都是由它們自身的實所決定的,每個收集器的日誌格式都可以不一樣。

技術分享圖片

最前面的數字“33.125”和“100.667”代表了GC發生的時間,這個數字的含義是從Java虛擬機啟動以來經過的秒數。

Gc日誌開頭的“GC”和“Full GC”說明了這次垃圾收集的停頓類型,而不是用來區分新生代還是老年代。如果有“Full”說明這次GC發生了“Stop-The-World”

接下來的“DefNew”、“Tenured”、“Perm”表示GC發生的區域,這裏顯示的區域名稱與使用GC收集器是密切相關的,使用Serial收集器顯示“Default New Generation‘”-----“DefNew” 如果是ParNew-----------“ParNew” 如果是Paraller Scavenge收集器------“PSYoungGen”

後面方括號內部的“3324K -> 152K(3712K)”含義是“GC前該內存區域已使用容量” -> GC後該內存區域已使用容量。

而方括號外的“3324K -> 152K(11904K)” 表示“GC前java堆已使用容量” -> GC後java堆已使用容量。

再往後,“0.0025925 secs” 表示該內存區域GC所占用的時間,單位是秒。

理解GC日誌