GC類型主要包括以下類型,其中不包含G1收集器算法
- UseSerialGC 是」Serial」+」Serial Old」
- UseParNewGC 是」ParNew」+」Serial Old」
- UseConcMarkSweepGC 是」ParNew」+」CMS」+」Serial Old」。大多數時候是使用」CMS」來收集老年代,當併發模式失敗的時候使用」Serial Old」
- UseParallelGC 是」Parallel Scavenge」+」Serial Old」
- UseParallelOldGC 是」Parallel Scavenge」+」Parallel Old」
GC算法說明 多線程
- Serial」是一個單線程、stop-the-world、使用複製算法的收集器。
- 「ParNew」 是一個多線程、stop-the-world、使用複製算法的收集器。和」Parallel Scavenge」不一樣,它能夠和」CMS」收集器一塊兒使用。好比說,」ParNew」作了同步須要,以便它能在CMS的併發階段繼續運行。
- 「Parallel Scavenge」 是一個多線程、stop-the-world、複製算法的收集器。
- 「Serial Old」是一個單線程 、stop-the-world、使用標記-清除-壓縮的收集器。
- 「CMS」是一個併發、短暫停的收集器。
- 「Parallel Old」是多線程、使用壓縮算法的收集器。
指定GG指定日誌格式併發
-XX:+UseSerialGC
[GC[DefNew: 12888K->811K(13440K), 0.0113470 secs] 37887K->26027K(43240K), 0.0114190 secs] [Times: user=0.02 sys=0.00, real=0.01 secs]
[GC[DefNew: 12779K->765K(13440K), 0.0099820 secs] 37995K->26149K(43240K), 0.0100570 secs] [Times: user=0.01 sys=0.00, real=0.01 secs] 線程
[Full GC[Tenured: 25384K->15947K(29800K), 0.2289080 secs] 29058K->15947K(43240K), [Perm : 37567K->37500K(37568K)], 0.2290770 secs] [Times: user=0.23 sys=0.00, real=0.23 secs]
日誌
-XX:+UseParNewGC
[GC[ParNew: 13408K->1031K(13504K), 0.0044490 secs] 38917K->26781K(43312K), 0.0045190 secs] [Times: user=0.02 sys=0.00, real=0.00 secs]
[GC[ParNew: 13063K->804K(13504K), 0.0102060 secs] 38813K->26806K(43312K), 0.0102800 secs] [Times: user=0.03 sys=0.01, real=0.01 secs] rem
[Full GC[Tenured: 26001K->17762K(29808K), 0.2232010 secs] 27023K->17762K(43312K), [Perm : 37567K->37552K(37568K)], 0.2232910 secs] [Times: user=0.23 sys=0.00, real=0.23 secs]
同步
-XX:+UseConcMarkSweepGC
[GC[ParNew: 1702K->257K(15360K), 0.0090240 secs] 31461K->31357K(49536K), 0.0090960 secs] [Times: user=0.01 sys=0.01, real=0.01 secs]
[GC [1 CMS-initial-mark: 31099K(34176K)] 31597K(49536K), 0.0032220 secs] [Times: user=0.00 sys=0.00, real=0.00 secs]
[CMS-concurrent-mark: 0.114/0.116 secs] [Times: user=0.30 sys=0.02, real=0.12 secs]
[CMS-concurrent-preclean: 0.002/0.002 secs] [Times: user=0.01 sys=0.00, real=0.00 secs]
[CMS-concurrent-abortable-preclean: 0.000/0.000 secs] [Times: user=0.00 sys=0.00, real=0.00 secs]
[GC[YG occupancy: 5659 K (15360 K)][Rescan (parallel) , 0.0058760 secs][weak refs processing, 0.0004990 secs][scrub string table, 0.0015630 secs] [1 CMS-remark: 31099K(34176K)] 36759K(49536K), 0.0082090 secs] [Times: user=0.02 sys=0.00, real=0.01 secs]
[CMS-concurrent-sweep: 0.037/0.038 secs] [Times: user=0.13 sys=0.01, real=0.04 secs]
[CMS-concurrent-reset: 0.000/0.001 secs] [Times: user=0.00 sys=0.00, real=0.00 secs]string
-XX:+UseParallelGC
[GC [PSYoungGen: 9184K->1024K(8192K)] 29265K->21251K(28672K), 0.0031060 secs] [Times: user=0.01 sys=0.00, real=0.00 secs] it
[Full GC [PSYoungGen: 1024K->507K(8192K)] [ParOldGen: 20227K->20436K(20480K)] 21251K->20943K(28672K) [PSPermGen: 35171K->35170K(58368K)], 0.2310650 secs] [Times: user=0.73 sys=0.00, real=0.23 secs]table
-XX:+UseParallelOldGC
[GC [PSYoungGen: 9728K->384K(8704K)] 29827K->20835K(29184K), 0.0027240 secs] [Times: user=0.01 sys=0.00, real=0.00 secs]
[Full GC [PSYoungGen: 384K->300K(8704K)] [ParOldGen: 20451K->20183K(20480K)] 20835K->20483K(29184K) [PSPermGen: 34972K->34972K(58368K)], 0.2268760 secs] [Times: user=0.81 sys=0.00, real=0.23 secs]