如何啟動GC日志
啟動JVM時加上如下參數
- -verbose:gc辨別輸出GC相關資訊
- -Xloggc:/gc.log指定GC日志存放的檔案路徑
- -XX:+PrintGCDetails辨別輸出GC詳情
- -XX:+PrintGCDateStamps表示日志中輸出GC的時間戳
GC日志能夠提供什麼資訊
通過GC日志,能夠看到每一次GC的記錄。
- 時間方面,包括GC開始的時間和執行時間。其中執行時間還分為sys、user和real。
- 空間方面,能夠知道總的堆大小,回收前新生代和老生代的記憶體大小,回收後新生代和老生代的記憶體大小。
- 通過新生代和老生代記憶體變化,可以分析出GC是由新生代觸發的,還是由老生代觸發的。