千鋒教育-做有情懷、有良心、有品質(zhì)的職業(yè)教育機構
引用計數(shù)法:對象每被引用一次就+1,為0時回收,速度很快但是無法識別循環(huán)引用
標記清除法:遍歷所有對象,標記沒被引用的,然后統(tǒng)一清除。
缺點是效率低、清理后內(nèi)存不連續(xù)。
復制清除法:將內(nèi)存分為兩塊,其中一塊寫滿后,遍歷對象標記有用的對象復制到另一塊,然后把這一塊清理,這樣復制的內(nèi)容很少而且內(nèi)存始終連續(xù),缺點是始終需要有一塊內(nèi)存空出來用于復制。
標記整理法:遍歷出有用的對象,將這些對象全都向一端移動,然后清理其它空間,一樣能騰出連續(xù)的內(nèi)存,但是移動對象的成本比復制大得多。
GC采用分代收集法:年輕代采用復制清除法,每當eden滿時,就遍歷出eden和幸存者1區(qū)的有用對象復制到幸存者2區(qū),然后清空重新寫起。
因此無論何時一定有一個幸存者區(qū)是空的。
老年代由于有用的對象很多所以復制成本高,采用標記整理法減少復制。
相關推薦