1. 程式人生 > >JVM調優_記憶體分代_CMS&G1

JVM調優_記憶體分代_CMS&G1

(一)垃圾回收調優

  (1)垃圾

  1. 從根物件出發,所有被引用的物件,都是存活物件,其他物件都是垃圾.
  2. 根物件:棧中的引用變數,方法區的靜態變數所引用的物件.

  (2)GC垃圾清除三種方法

    1 複製 ----  圖解

      

    2 標記清除  ---- 圖解

       

    3 標記整理  ----圖解

     

 


 

(二)記憶體的分代

  記憶體分為新生代,老年代,永久代(方法區)

  在JDK的HotSpot虛擬機器中,可以認為方法區就是永久代,但是在其他型別的虛擬機器中,沒有永久代的概念

  1 新生代

    ♦伊甸園

    ♦生存區: 有from 和 to

    

  2 老年代

   垃圾回收策略: 標記清除,標記整理

  3 永久代(HotSpot虛擬機器中有,其它虛擬機器沒有此概念)

   存放了要載入的類資訊、靜態變數、final型別的常量、屬性和方法資訊


 

(三)垃圾回收器CMS和G1

  1 CMS回收器

  1. 併發的標記整理
  2. 引起的STW(Stop The Word)更短,執行垃圾回收的時,暫停所有Java程式的執行
  3. CMS執行過程: (1)初始標記(STW),只標記根物件   (2)併發標記
       (3)重新標記(STW)    (4)併發清理

  2 G1垃圾回收器

  1. Garbage First
  2. 顛覆了傳統的分代記憶體劃分
  3. 優先回收垃圾最多的記憶體區域
  4. 優化簡單

附上一片詳細介紹G1的部落格,自己看了覺得不錯

http://www.cnblogs.com/nashiyue/p/5797713.html

 


 

 

    聽說今天烏魯木齊在下土(雪裡夾著很多土)

      現在這裡還沒下雪,有點懷念下雪的天氣.  

12月你好