JVM垃圾回收

       GC (Garbage Collection)的基本原理:

      將內存中不再被使用的對象進行回收,GC中用於回收的方法稱爲收集器,由於GC需要消耗一些資源和時間,Java在對對象的生命週期特徵進行分析後,按照新生代、舊生代的方式來對對象進行收集,以儘可能的縮短GC對應用造成的暫停。

    (1)對新生代的對象的收集稱爲minor GC;

    (2)對舊生代的對象的收集稱爲Full GC;

    (3)程序中主動調用System.gc()強制執行的GC爲Full GC。


      不同的對象引用類型, GC會採用不同的方法進行回收,JVM對象的引用分爲了四種類型:

    (1)強引用:默認情況下,對象採用的均爲強引用(這個對象的實例沒有其他對象引用,GC時纔會被回收)

    (2)軟引用:軟引用是Java中提供的一種比較適合於緩存場景的應用(只有在內存不夠用的情況下才會被GC)

    (3)弱引用:在GC時一定會被GC回收

    (4)虛引用:由於虛引用只是用來得知對象是否被GC

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章