国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

jvm垃圾回收相關(guān)的算法

這篇具有很好參考價(jià)值的文章主要介紹了jvm垃圾回收相關(guān)的算法。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

什么是垃圾

JVM主要通過以下幾種方式來判斷對(duì)象是否需要回收:

  1. 引用計(jì)數(shù)法:JVM通過引用計(jì)數(shù)器來判斷對(duì)象的引用數(shù)量,當(dāng)引用數(shù)量為0時(shí),表示對(duì)象可以被回收。

  2. 可達(dá)性分析算法:JVM通過根對(duì)象(如棧中的引用、靜態(tài)變量等)出發(fā),對(duì)對(duì)象進(jìn)行可達(dá)性分析,判斷對(duì)象是否可被訪問到,如果不可達(dá),則表示對(duì)象可以被回收。

  3. 年齡判斷:對(duì)于分代垃圾回收算法,JVM會(huì)根據(jù)對(duì)象的存活時(shí)間來判斷對(duì)象是否需要回收,存活時(shí)間較長(zhǎng)的對(duì)象會(huì)被移到老年代,存活時(shí)間較短的對(duì)象會(huì)被回收。

  4. 標(biāo)記階段:在標(biāo)記-清除、標(biāo)記-整理等算法中,JVM會(huì)通過標(biāo)記活動(dòng)對(duì)象來判斷哪些對(duì)象可以被回收。

這些方法結(jié)合起來,幫助JVM判斷哪些對(duì)象可以被回收,從而進(jìn)行垃圾回收操作。

垃圾回收算法

垃圾回收算法 區(qū)別
標(biāo)記-清除算法 通過標(biāo)記所有活動(dòng)對(duì)象,然后清除所有未標(biāo)記的對(duì)象來回收內(nèi)存。但會(huì)產(chǎn)生內(nèi)存碎片
復(fù)制算法 將內(nèi)存分為兩塊,每次只使用其中一塊,當(dāng)這一塊內(nèi)存滿了,就將存活的對(duì)象復(fù)制到另一塊內(nèi)存中,然后清除當(dāng)前內(nèi)存中的所有對(duì)象。不會(huì)產(chǎn)生內(nèi)存碎片
標(biāo)記-整理算法 類似于標(biāo)記-清除算法,但在清除之后會(huì)將存活的對(duì)象向一端移動(dòng),整理出連續(xù)的內(nèi)存空間。減少內(nèi)存碎片的產(chǎn)生
分代算法 將內(nèi)存分為新生代和老年代,新生代使用復(fù)制算法,老年代使用標(biāo)記-整理算法,根據(jù)對(duì)象的存活時(shí)間來進(jìn)行不同的垃圾回收處理
并發(fā)標(biāo)記清除算法 在標(biāo)記和清除階段盡可能與程序并發(fā)執(zhí)行,減少停頓時(shí)間

幾個(gè)主流的垃圾回收器

特征 CMS G1 ZGC
垃圾回收類型 并發(fā)標(biāo)記-清除 并發(fā)標(biāo)記-整理 并發(fā)標(biāo)記-整理
目標(biāo) 減少停頓時(shí)間 綜合性能和停頓時(shí)間 低停頓時(shí)間和高吞吐量
內(nèi)存分區(qū) 以老年代為主 將堆劃分為多個(gè)區(qū)域 不需要分代,整個(gè)堆都是一致的
停頓時(shí)間 有可能出現(xiàn)較長(zhǎng)的停頓時(shí)間 相對(duì)較穩(wěn)定的停頓時(shí)間 盡可能短的停頓時(shí)間
內(nèi)存占用 中等
適用場(chǎng)景 適用于內(nèi)存較大、應(yīng)用線程較少的場(chǎng)景 適用于大內(nèi)存、多核處理器的場(chǎng)景 適用于需要低延遲和大堆的場(chǎng)景

這些垃圾回收器各有其特點(diǎn),可以根據(jù)具體的應(yīng)用場(chǎng)景和需求來選擇最合適的垃圾回收器。文章來源地址http://www.zghlxwxcb.cn/news/detail-781485.html

到了這里,關(guān)于jvm垃圾回收相關(guān)的算法的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 【JVM】JVM 垃圾回收算法

    【JVM】JVM 垃圾回收算法

    目前JVM中有三種常見的垃圾回收算法,分別是:標(biāo)記清除、標(biāo)記整理和復(fù)制,這三種垃圾回收算法各有優(yōu)缺點(diǎn),下面逐一介紹。 在讀本篇文章中,如果對(duì)JVM中哪個(gè)是垃圾,哪個(gè)不是垃圾,JVM到底是怎么知道的,請(qǐng)先讀下面這篇文章 【JVM】JVM 判斷對(duì)象存活算法(引用計(jì)數(shù)算法

    2024年02月09日
    瀏覽(26)
  • JVM基礎(chǔ)(5)——JVM垃圾回收算法

    JVM基礎(chǔ)(5)——JVM垃圾回收算法

    作者簡(jiǎn)介:大家好,我是smart哥,前中興通訊、美團(tuán)架構(gòu)師,現(xiàn)某互聯(lián)網(wǎng)公司CTO 聯(lián)系qq:184480602,加我進(jìn)群,大家一起學(xué)習(xí),一起進(jìn)步,一起對(duì)抗互聯(lián)網(wǎng)寒冬 學(xué)習(xí)必須往深處挖,挖的越深,基礎(chǔ)越扎實(shí)! 階段1、深入多線程 階段2、深入多線程設(shè)計(jì)模式 階段3、深入juc源碼解析

    2024年02月02日
    瀏覽(30)
  • 【JVM】垃圾回收算法

    【JVM】垃圾回收算法

    標(biāo)記-清除算法將垃圾回收分為兩個(gè)階段,標(biāo)記階段和清除階段 在標(biāo)記階段首先通過GC Roots,標(biāo)記所有從根節(jié)點(diǎn)開始的對(duì)象,未被標(biāo)記的對(duì)象就是未引用的垃圾對(duì)象。然后,在清除階段,清除未被標(biāo)記的對(duì)象。 適合場(chǎng)景: 1、存活對(duì)象較多的情況下比較高效 2、使用于老年代

    2024年01月16日
    瀏覽(66)
  • JVM---垃圾回收算法介紹

    目錄 分代收集理論 三種垃圾回收算法 標(biāo)記-清除算法(最基礎(chǔ)的、基本不用) 標(biāo)記-復(fù)制算法 標(biāo)記-整理算法 正式因?yàn)閖vm有了垃圾回收機(jī)制,作為java開發(fā)者不會(huì)去特備關(guān)注內(nèi)存,不像C和C++。 優(yōu)點(diǎn) :開發(fā)門檻低、安全 缺點(diǎn) :性能問題。c和c++可以自己操控內(nèi)存等,性能更高

    2024年02月12日
    瀏覽(23)
  • JVM之三大垃圾回收算法

    JVM之三大垃圾回收算法

    提示:這里可以添加本文要記錄的大概內(nèi)容: 例如:隨著人工智能的不斷發(fā)展,機(jī)器學(xué)習(xí)這門技術(shù)也越來越重要,很多人都開啟了學(xué)習(xí)機(jī)器學(xué)習(xí),本文就介紹了機(jī)器學(xué)習(xí)的基礎(chǔ)內(nèi)容。 提示:以下是本篇文章正文內(nèi)容,下面案例可供參考 復(fù)制算法的核心就是, 將原有的內(nèi)存空

    2024年02月14日
    瀏覽(25)
  • 【JVM篇】有哪些垃圾回收算法

    【JVM篇】有哪些垃圾回收算法

    主要分為下面2個(gè)階段 標(biāo)記階段,將所有存活的對(duì)象進(jìn)行標(biāo)記。Java中使用可達(dá)性分析算法,從GC Root開始通過引用鏈遍歷出所有存活對(duì)象 清除階段,從內(nèi)存中刪除沒有被標(biāo)記的對(duì)象(非存活對(duì)象) 優(yōu)點(diǎn):實(shí)現(xiàn)簡(jiǎn)單,只需要在第一階段給每個(gè)對(duì)象維護(hù)標(biāo)志位,第二階段刪除對(duì)象

    2024年02月21日
    瀏覽(21)
  • JVM垃圾回收算法和CMS垃圾收集器

    JVM垃圾回收算法和CMS垃圾收集器

    目錄 判斷一個(gè)對(duì)象是否死亡? 1、引用計(jì)數(shù)法? 2、可達(dá)性分析算法 三色標(biāo)記 垃圾收集算法 1、分代收集理論? 2、垃圾回收算法 標(biāo)記-清除 標(biāo)記-復(fù)制 標(biāo)記-整理 CMS(Concurrent Mark Sweep)收集器 CMS垃圾收集器步驟 CMS垃圾收集器優(yōu)缺點(diǎn) 垃圾收集需要完成的三件事情: 哪些內(nèi)存需

    2024年02月10日
    瀏覽(27)
  • JVM學(xué)習(xí) GC垃圾回收機(jī)制 (堆內(nèi)存結(jié)構(gòu)、GC分類、四大垃圾回收算法)

    JVM學(xué)習(xí) GC垃圾回收機(jī)制 (堆內(nèi)存結(jié)構(gòu)、GC分類、四大垃圾回收算法)

    ?? 作者簡(jiǎn)介: 努力的clz ,一個(gè)努力編程的菜鳥 ?????? ? ?? 文章專欄: 《JVM 學(xué)習(xí)筆記》 ,本專欄會(huì)專門記錄博主在學(xué)習(xí) JVM 中學(xué)習(xí)的知識(shí)點(diǎn),以及遇到的問題。 ? ?? 文章詳情: 本篇博客是學(xué)習(xí) 【狂神說Java】JVM快速入門篇 的學(xué)習(xí)筆記,關(guān)于 GC垃圾回收機(jī)制 (堆內(nèi)存結(jié)

    2023年04月19日
    瀏覽(23)
  • JVM-垃圾回收(標(biāo)記算法,收集器)

    JVM-垃圾回收(標(biāo)記算法,收集器)

    申明:文章內(nèi)容是本人學(xué)習(xí)極客時(shí)間課程所寫,文字和圖片基本來源于課程資料,在某些地方會(huì)插入一點(diǎn)自己的理解,未用于商業(yè)用途,侵刪。 原資料地址:課程資料 垃圾回收的基本原理 1 什么是垃圾? 在內(nèi)存中,沒有被引用的對(duì)象就是垃圾。 2 如果找到垃圾對(duì)象? 引用計(jì)

    2024年02月21日
    瀏覽(31)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包