java垃圾回收的回收器

回收器的種類:java

--串行(–XX:+UseSerialGC )算法

    Out ofBox算法,年輕代串行復制,年老代串行標記整理,主要用於桌面應用併發

 

  --並行(–XX:+UseParallelGC )jvm

    年輕代暫停應用程序,多個垃圾收集線程並行的複製收集,年老代暫停應用程序,與串行收集器同樣,單垃圾收集線程標記整理。JDK6.0啓用該算法後,默認啓用了-XX:+UseParallelOldGC,性能大爲提升性能

 

  --併發(Concurrent Low Pause Collector)(–XX:+UseConcMarkSweepGC )spa

    啓用該參數,默認啓用了-XX:+UseParNewGC;簡單的說,併發是指用戶線程與垃圾收集線程併發,程序在繼續運行,而垃圾收集程序運行於其餘CPU上。

線程

如何查看jvm使用的是哪一種回收器:code

方法一:blog

java -XX:+PrintFlagsFinal -version | grep :get

方法二:

java -XX:+PrintCommandLineFlags -version

方發三:

import java.lang.management.GarbageCollectorMXBean;
import java.lang.management.ManagementFactory;
import java.util.List;
 
public class x {
    public static void main(String args[]) {
        List<GarbageCollectorMXBean> l = ManagementFactory.getGarbageCollectorMXBeans();
        for(GarbageCollectorMXBean b : l) {
            System.out.println(b.getName());
        }
    }
}
相關文章
相關標籤/搜索