通用分代垃圾回收 尚学堂067

https://www.sxt.cn/Java_jQuery_in_action/The_garbage_collection_mechanism.html

B站:基础300级  av59814573

 

我们将对象分为三种状态:年轻代、年老代、持久代。JVM将堆内存划分为 Eden、Survivor 和 Tenured/Old 空间。

 

年轻代:在 Eden、Survivor 里

年老代:在 Tenured/Old 的空间里

持久代:在方法区里,程序在,它就一直在。

通用分代垃圾回收 尚学堂067

 

通用分代垃圾回收 尚学堂067

 

Minor GC:minor是未成年的意思,只要Eden区一满,就通过引用计数法或则引用可达法(根搜索算法),把无用的清除掉,有用的留下来。同时采用复制算法,将留下的全部复制到Survivor1区或则Survivor2区其中一个,survivor是幸存的意思。

 

System.gc()是建议去调用垃圾回收,但是是否调用、启动垃圾回收程序员说了不算,是由垃圾回收机制说了算,程序员写System.gc()只是发个建议。

垃圾回收机制:我会考虑你程序员System.gc()的建议,我也会自己判断是否采纳你的建议!不一定你建议了就要启动垃圾回收!