成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

幾分鐘理解 Jdk - Reference

JohnLui / 1092人閱讀

摘要:一個(gè)對(duì)象是否有虛引用的存在,完全不會(huì)對(duì)其生存時(shí)間構(gòu)成影響,也無法通過虛引用來取得一個(gè)對(duì)象實(shí)例。為一個(gè)對(duì)象設(shè)置虛引用關(guān)聯(lián)的唯一目的就是能在這個(gè)對(duì)象被垃圾收集器回收時(shí)收到一個(gè)系統(tǒng)通知。在之后提供了類來實(shí)現(xiàn)虛引用參考深入理解虛擬機(jī)

GC

$TODO$

一個(gè)對(duì)象的生命周期

一個(gè)對(duì)象的生命周期從它被創(chuàng)建開始,此時(shí)虛擬機(jī)會(huì)給它置一個(gè)內(nèi)部標(biāo)識(shí)finalizable,當(dāng) GC 到達(dá)某一個(gè)安全點(diǎn)并檢驗(yàn)該對(duì)象不可達(dá),即無引用指向它時(shí),該對(duì)象會(huì)被放入一個(gè) finalize queue(F queue),虛擬機(jī)將會(huì)執(zhí)行其 finalize() 方法,并將 finalizable 標(biāo)識(shí)清空,然后銷毀該對(duì)象,其中 finalize() 方法的執(zhí)行順序是不穩(wěn)定的,而且只能被執(zhí)行一次

也就是說,如果在 finalize() 中采取某些方法,將有可能將對(duì)象從死亡邊緣挽救回來,如果令一個(gè)引用指向 this,該對(duì)象很可能會(huì)在這次 GC 中復(fù)活,但只有一次

通常來說,不建議重寫此方法

引用分類

Java 中,引用可以分為四種,下面我們簡單地概括一下,其中,內(nèi)存溢出之前指百分之九十八的 GC 回收了百分之二的內(nèi)存

|引用|回收策略
|:-: |:-: |
|強(qiáng)引用|無引用指向時(shí)|
|軟引用|內(nèi)存溢出之前|
|弱引用|無比弱引用更強(qiáng)的引用指向時(shí)|

虛引用并沒在上表,因?yàn)槲乙膊磺宄赜猛舅?/p>

以下為摘錄自 《深入理解Java虛擬機(jī)》 中關(guān)于引用的內(nèi)容:

在jdk1.2之后,Java對(duì)引用的概念進(jìn)行了擴(kuò)充,將引用分為強(qiáng)引用(Strong Reference)、軟引用(Soft Reference)、弱引用(Weak Reference)、虛引用(Phantom Reference)四種:

強(qiáng)引用就是指在程序代碼之中普遍存在的,類似Object obj = new Object()這類的引用,只要強(qiáng)引用還存在,垃圾收集器永遠(yuǎn)不會(huì)回收掉被引用的對(duì)象

軟引用是用來描述一些還有用但并非必需的對(duì)象。對(duì)于軟引用關(guān)聯(lián)著的對(duì)象,在系統(tǒng)將要發(fā)生 內(nèi)存溢出異常之前,將會(huì)把這些對(duì)象列進(jìn)回收范圍之中進(jìn)行第二次回收。在jdk1.2之后提供了 SoftReference

類來實(shí)現(xiàn)軟引用

弱引用也是用來描述非必需對(duì)象的,但是它的強(qiáng)度比軟引用更弱一些,被弱引用關(guān)聯(lián)的對(duì)象只能生存到下一次垃圾收集發(fā)送之前。當(dāng)垃圾收集器工作時(shí),無論內(nèi)存是否足夠,都會(huì)回收掉 只被弱引用關(guān)聯(lián)的對(duì)象。在jdk1.2之后提供了 WeakReference 類來實(shí)現(xiàn)弱引用

虛引用也稱為幽靈引用或者幻影引用,它是最弱的一種引用關(guān)系。一個(gè)對(duì)象是否有虛引用的存在,完全不會(huì)對(duì)其生存時(shí)間構(gòu)成影響,也無法通過虛引用來取得一個(gè)對(duì)象實(shí)例。為一個(gè)對(duì)象設(shè)置虛引用關(guān)聯(lián)的唯一目的就是能在這個(gè)對(duì)象被垃圾收集器回收時(shí)收到一個(gè)系統(tǒng)通知。在jdk1.2之后提供了 PhantomReference 類來實(shí)現(xiàn)虛引用

Reference

$TODO$

ReferenceQueue

$TODO$

參考

1. 《深入理解Java虛擬機(jī)》

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/67539.html

相關(guān)文章

  • 分鐘理解 Jdk - ==,hashCode() 與 equals()

    摘要:小概與,這三個(gè)操作在程序當(dāng)中滿地都是,特別是容器里,如中的哈希映射與搜索元素就是根據(jù)和判斷的,所以如何正確的理解和使用顯得非常重要,并且在封裝類的時(shí)候,十分建議通通重寫我們先要知道這個(gè)概念,每個(gè)線程都有屬于自己的虛擬機(jī)棧,虛擬機(jī)棧中的元素我 小概 ==,hashCode() 與 equals() ,這三個(gè)操作在 Java 程序當(dāng)中滿地都是,特別是容器里,如 Map 中的哈希映射與搜索元...

    CNZPH 評(píng)論0 收藏0
  • jvm垃圾回收三部曲

    摘要:強(qiáng)引用中最常見的引用,引用計(jì)數(shù)算法的就是典型的強(qiáng)引用,只要強(qiáng)引用還存在,垃圾收集器永遠(yuǎn)不會(huì)回收掉被引用的對(duì)象。 概述 早在半個(gè)世紀(jì)以前,第一個(gè)使用了內(nèi)存動(dòng)態(tài)分配和垃圾收集技術(shù)的語言Lisp就已經(jīng)誕生了,從那時(shí),人們就在思考關(guān)于gc需要完成的三件事請(qǐng): 哪些內(nèi)存需要回收 什么時(shí)候回收 如何回收 直到今天已經(jīng)有越來越多的語言開始內(nèi)置內(nèi)存動(dòng)態(tài)分配和垃圾收集技術(shù)。經(jīng)過長時(shí)間的發(fā)展,這些技術(shù)...

    wanghui 評(píng)論0 收藏0
  • 《深入理解java虛擬機(jī)》學(xué)習(xí)筆記系列——垃圾收集器&內(nèi)存分配策略

    摘要:虛擬機(jī)所處的區(qū)域,則表示它是屬于新生代收集器還是老年代收集器。虛擬機(jī)總共運(yùn)行了分鐘,其中垃圾收集花掉分鐘,那么吞吐量就是。收集器線程所占用的數(shù)量為。 本文主要從GC(垃圾回收)的角度試著對(duì)jvm中的內(nèi)存分配策略與相應(yīng)的垃圾收集器做一個(gè)介紹。 注:還是老規(guī)矩,本著能畫圖就不BB原則,盡量將各知識(shí)點(diǎn)通過思維導(dǎo)圖或者其他模型圖的方式進(jìn)行說明。文字僅記錄額外的思考與心得,以及其他特殊情況 內(nèi)存...

    calx 評(píng)論0 收藏0
  • 還在用Synchronized?Atomic你了解不?

    摘要:失敗重試自旋比如說,我上面用了個(gè)線程,對(duì)值進(jìn)行加。我們都知道如果在線程安全的情況下,這個(gè)值最終的結(jié)果一定是為的。那就意味著每個(gè)線程都會(huì)對(duì)這個(gè)值實(shí)質(zhì)地進(jìn)行加。 前言 只有光頭才能變強(qiáng) 之前已經(jīng)寫過多線程相關(guān)的文章了,有興趣的同學(xué)可以去了解一下: https://github.com/ZhongFuCheng3y/3y/blob/master/src/thread.md showImg(h...

    陳江龍 評(píng)論0 收藏0
  • Java中的四種引用(強(qiáng)引用、軟引用、弱引用、虛引用)

    摘要:在之后,對(duì)引用的概念進(jìn)行了擴(kuò)充,將引用分為強(qiáng)引用軟引用弱引用虛引用種,這種引用強(qiáng)度依次逐漸減弱。軟引用是用來描述一些還有用但并非必需的對(duì)象。虛引用也稱為幽靈引用或者幻影引用,它是最弱的一種引用關(guān)系。 以下內(nèi)容摘自《深入理解Java虛擬機(jī) JVM高級(jí)特性與最佳實(shí)踐》第2版,強(qiáng)烈推薦沒有看過的同學(xué)閱讀,讀完的感覺就是原來學(xué)的都是些什么瘠薄東西(╯‵□′)╯︵┴─┴ 在JDK1.2以前,Ja...

    wwolf 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<