色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

您好,歡迎來電子發(fā)燒友網(wǎng)! ,新用戶?[免費(fèi)注冊]

您的位置:電子發(fā)燒友網(wǎng)>源碼下載>java源碼下載>

詳解java垃圾回收機(jī)制原理

大小:1.6 MB 人氣: 2017-09-27 需要積分:1

  1.引用計(jì)數(shù)法(Reference Counting Collector)

  1.1算法分析

  引用計(jì)數(shù)是垃圾收集器中的早期策略。在這種方法中,堆中每個(gè)對象實(shí)例都有一個(gè)引用計(jì)數(shù)。當(dāng)一個(gè)對象被創(chuàng)建時(shí),且將該對象實(shí)例分配給一個(gè)變量,該變量計(jì)數(shù)設(shè)置為1。當(dāng)任何其它變量被賦值為這個(gè)對象的引用時(shí),計(jì)數(shù)加1(a = b,則b引用的對象實(shí)例的計(jì)數(shù)器+1),但當(dāng)一個(gè)對象實(shí)例的某個(gè)引用超過了生命周期或者被設(shè)置為一個(gè)新值時(shí),對象實(shí)例的引用計(jì)數(shù)器減1。任何引用計(jì)數(shù)器為0的對象實(shí)例可以被當(dāng)作垃圾收集。當(dāng)一個(gè)對象實(shí)例被垃圾收集時(shí),它引用的任何對象實(shí)例的引用計(jì)數(shù)器減1。

  1.2優(yōu)缺點(diǎn)

  優(yōu)點(diǎn):

  引用計(jì)數(shù)收集器可以很快的執(zhí)行,交織在程序運(yùn)行中。對程序需要不被長時(shí)間打斷的實(shí)時(shí)環(huán)境比較有利。

  缺點(diǎn):

  無法檢測出循環(huán)引用。*如父對象有一個(gè)對子對象的引用,子對象反過來引用父對象。這樣,他們的引用計(jì)數(shù)永遠(yuǎn)不可能為0.

  1.3引用計(jì)數(shù)算法無法解決循環(huán)引用問題,例如:

  /** * Java學(xué)習(xí)交流QQ群:589809992 我們一起學(xué)Java! */publicclassMain{publicstaticvoidmain(String[] args) { MyObject object1 = newMyObject(); MyObject object2 = newMyObject(); object1.object = object2; object2.object = object1; object1 = null; object2 = null; } } 最后面兩句將object1和object2賦值為null,也就是說object1和object2指向的對象已經(jīng)不可能再被訪問,但是由于它們互相引用對方,導(dǎo)致它們的引用計(jì)數(shù)器都不為0,那么垃圾收集器就永遠(yuǎn)不會回收它們。

  2.tracing算法(Tracing Collector) 或 標(biāo)記-清除算法(mark and sweep)

  2.1根搜索算法

  詳解java垃圾回收機(jī)制原理

  根搜索算法是從離散數(shù)學(xué)中的圖論引入的,程序把所有的引用關(guān)系看作一張圖,從一個(gè)節(jié)點(diǎn)GC ROOT開始,尋找對應(yīng)的引用節(jié)點(diǎn),找到這個(gè)節(jié)點(diǎn)以后,繼續(xù)尋找這個(gè)節(jié)點(diǎn)的引用節(jié)點(diǎn),當(dāng)所有的引用節(jié)點(diǎn)尋找完畢之后,剩余的節(jié)點(diǎn)則被認(rèn)為是沒有被引用到的節(jié)點(diǎn),即無用的節(jié)點(diǎn)。

  java中可作為GC Root的對象有

  1.虛擬機(jī)棧中引用的對象(本地變量表)

  2.方法區(qū)中靜態(tài)屬性引用的對象

  3. 方法區(qū)中常量引用的對象

  4.本地方法棧中引用的對象(Native對象)

  2.2tracing算法的示意圖

  詳解java垃圾回收機(jī)制原理

  2.3標(biāo)記-清除算法分析

  標(biāo)記-清除算法采用從根集合進(jìn)行掃描,對存活的對象對象標(biāo)記,標(biāo)記完畢后,再掃描整個(gè)空間中未被標(biāo)記的對象,進(jìn)行回收,如上圖所示。標(biāo)記-清除算法不需要進(jìn)行對象的移動,并且僅對不存活的對象進(jìn)行處理,在存活對象比較多的情況下極為高效,但由于標(biāo)記-清除算法直接回收不存活的對象,因此會造成內(nèi)存碎片。

非常好我支持^.^

(0) 0%

不好我反對

(0) 0%

      發(fā)表評論

      用戶評論
      評價(jià):好評中評差評

      發(fā)表評論,獲取積分! 請遵守相關(guān)規(guī)定!

      ?
      主站蜘蛛池模板: 狂躁美女BBBBBB视频 | 亚洲日本va中文字幕久久 | 日本高清加勒比 | 我在厨房摸岳的乳HD在线观看 | 日韩精品熟女一区二区三区中文 | 午夜理论片日本中文在线 | 亚洲精品无码AV中文字幕蜜桃 | 1级午夜影院费免区 | 学生妹被爆插到高潮无遮挡 | 伦理片92伦理午夜 | 狠狠狠狠狠狠干 | 国产精品久久久久久久伊一 | 一本道高清码 | 亚洲国产第一 | qovd伦理| 国产无遮挡无码视频在线观看不卡 | 无羞耻肉动漫在线观看 | 亚洲欧美国产综合在线 | 欧美精品一区二区三区四区 | 日韩欧美中文字幕在线 | 午夜视频在线瓜伦 | 国产精品一区二区AV白丝在线 | 成人免费看片45分钟 | 99视频免视看 | 久久成人伊人欧洲精品AV | 亚洲精品视频区 | 闺蜜扒开我尿口使劲揉 | 日本一卡精品视频免费 | 亚洲国产韩国欧美在线不卡 | 色欲国产麻豆一精品一AV一免费 | 2022一本久道久久综合狂躁 | 在线毛片片免费观看 | 亚洲国产成人精品无码区99 | 我半夜摸妺妺的奶C了她软件 | 色播成人影院 | 91蜜桃视频 | 国产成a人片在线观看视频99 | 一级毛片免费下载 | 亚洲破处女 | 中文字幕精品视频在线 | 青草久久伊人 |