摘要:唯一目的就是在對象被回收時,可以收到一個系統(tǒng)通知。小結(jié)引用強弱強軟弱虛關(guān)于騰訊提前批,問了強弱引用的區(qū)別,直接蒙了。。
Java垃圾回收相關(guān) 對象的存活可以通過兩種方式確定:
引用計數(shù)法
可達性分析法
其中可達性分析法中,可以作為GCroot Set中的對象主要包括:
1. 虛擬機棧(棧幀中的本地變量表)中引用的對象; 2. 方法區(qū)中靜態(tài)屬性引用的對象; 3. 方法區(qū)中常量引用的對象; 4. 本地方法棧中JNI引用的對象。引用(騰訊提前批。。。強行問了) 各種引用(強,軟,弱,虛)
1.強引用
類似Object obj = new Object();
只要強引用還在,就永遠不會被回收。
2.軟引用
描述一些有用但并非必需的對象。在將要發(fā)生OOM之前,會把這些對象列進回收范圍之中進行第二次回收,如果回收還沒有足夠內(nèi)存,就拋OOM異常。
JDK1.2后提供了SoftReference來實現(xiàn)軟引用。
3.弱引用
弱引用也是描述非必需對象的,但是他的強度比軟引用更弱,被弱引用關(guān)聯(lián)的對象只能生存到下一次垃圾回收之前。1.2之后提供了WeakReference。當gc時,無論當前內(nèi)存是否足夠,都會回收掉只被弱引用關(guān)聯(lián)的對象。
4.虛引用
最弱的引用關(guān)系,1.2之后用PhantomReference來實現(xiàn),一個對象是否有虛引用,完全不影響其生產(chǎn)時間,也無法通過虛引用來獲得一個對象的實例。唯一目的就是在對象被回收時,可以收到一個系統(tǒng)通知。
引用強弱:強>軟>弱>虛
關(guān)于騰訊提前批,問了強弱引用的區(qū)別,直接蒙了。。
四大種
1.標記-清除
2.復制算法
3.標記-整理算法
4.分代收集算法
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/76572.html
摘要:棧因為是運行單位,因此里面存儲的信息都是跟當前線程相關(guān)的信息。基本類型和對象的引用都是在存放在棧中,而且都是幾個字節(jié)的一個數(shù),因此在程序運行時,他們的處理方式是統(tǒng)一的。對象,是由基本類型組成的。 一、概念 數(shù)據(jù)類型 java虛擬機中,數(shù)據(jù)類型可以分為兩類: 基本類型 引用類型 基本類型的變量保存原始值,即:他代表的值就是數(shù)值本身;而引用類型的變量保存引用值。基本類型包括:byte,sh...
摘要:在架構(gòu)中,堆內(nèi)存和垃圾回收器這兩個部分和垃圾回收相關(guān)。堆內(nèi)存在的內(nèi)存模型中,最重要的是要了解堆內(nèi)存的概念。在垃圾回收的過程中,這些對象將被從堆內(nèi)存中清除,同時它們的空間也就被回收了。 本文非原創(chuàng),翻譯自Java Garbage Collection introduction在Java中為對象分配和釋放內(nèi)存空間都是由垃圾回收線程自動執(zhí)行完成的。和C語言不一樣的是Java程序員不需要手動寫...
摘要:廣告位出售垃圾回收機制淺析與理解對垃圾回收進行分析前,我們先來了解一些基本概念基本概念內(nèi)存管理內(nèi)存管理對于編程語言至關(guān)重要。里面的變量通常是局部變量函數(shù)參數(shù)等。 GC(@廣告位出售)垃圾回收機制: 淺析與理解 對垃圾回收進行分析前,我們先來了解一些基本概念 基本概念 內(nèi)存管理:內(nèi)存管理對于編程語言至關(guān)重要。匯編允許你操作所有東西,或者說要求你必須全權(quán)處理所有細節(jié)更合適。C 語言中雖然...
閱讀 2351·2021-11-24 11:16
閱讀 2038·2021-09-30 09:47
閱讀 2006·2021-09-10 10:51
閱讀 1323·2019-08-30 14:08
閱讀 3141·2019-08-30 13:47
閱讀 1529·2019-08-30 13:02
閱讀 3233·2019-08-29 12:29
閱讀 3199·2019-08-26 17:05