做響應(yīng)式的網(wǎng)站seo教程視頻論壇
🌈hello,你好鴨,我是Ethan,一名不斷學(xué)習(xí)的碼農(nóng),很高興你能來閱讀。
??目前博客主要更新Java系列、項(xiàng)目案例、計(jì)算機(jī)必學(xué)四件套等。
🏃人生之義,在于追求,不在成敗,勤通大道。加油呀!
🔥個(gè)人主頁(yè):Ethan Yankang
🔥專欄:面試八股文||Java項(xiàng)目
🔥本篇概覽:詳細(xì)講解了G1垃圾回收器的工作原理
?
目錄
?3.6 詳細(xì)聊一下G1垃圾回收器
3.6.1 概述
3.6.2 Young Collection(年輕代垃圾回收)
3.6.3 Young Collection + Concurrent Mark (年輕代垃圾回收+并發(fā)標(biāo)記)
3.6.4 Mixed Collection (混合垃圾回收)
3.6 詳細(xì)聊一下G1垃圾回收器
難易程度:☆☆☆☆
出現(xiàn)頻率:☆☆☆☆
3.6.1 概述
-
應(yīng)用于新生代和老年代,在DK9之后默認(rèn)使用G1
-
劃分成多個(gè)區(qū)域,每個(gè)區(qū)域都可以充當(dāng) eden,survivor,old, humongous,其中 humongous 專為大對(duì)象準(zhǔn)備
-
采用復(fù)制算法
-
響應(yīng)時(shí)間與吞吐量兼顧
-
分成三個(gè)階段:新生代回收、并發(fā)標(biāo)記、混合收集
-
如果并發(fā)失敗(即回收速度趕不上創(chuàng)建新對(duì)象速度),會(huì)觸發(fā) Full GC
3.6.2 Young Collection(年輕代垃圾回收)
-
初始時(shí),所有區(qū)域都處于空閑狀態(tài)
-
創(chuàng)建了一些對(duì)象,挑出一些空閑區(qū)域作為伊甸園區(qū)存儲(chǔ)這些對(duì)象
-
當(dāng)伊甸園需要垃圾回收時(shí),挑出一個(gè)空閑區(qū)域作為幸存區(qū),用復(fù)制算法復(fù)制存活對(duì)象,需要暫停用戶線程
-
隨著時(shí)間流逝,伊甸園的內(nèi)存又有不足
-
將伊甸園以及之前幸存區(qū)中的存活對(duì)象,采用復(fù)制算法,復(fù)制到新的幸存區(qū),其中較老對(duì)象晉升至老年代
3.6.3 Young Collection + Concurrent Mark (年輕代垃圾回收+并發(fā)標(biāo)記)
當(dāng)老年代占用內(nèi)存超過閾值(默認(rèn)是45%)后,觸發(fā)并發(fā)標(biāo)記,這時(shí)無需暫停用戶線程
-
并發(fā)標(biāo)記之后,會(huì)有重新標(biāo)記階段解決漏標(biāo)問題,此時(shí)需要暫停用戶線程。
-
這些都完成后就知道了老年代有哪些存活對(duì)象,隨后進(jìn)入混合收集階段。此時(shí)不會(huì)對(duì)所有老年代區(qū)域進(jìn)行回收,而是根據(jù)暫停時(shí)間目標(biāo)優(yōu)先回收價(jià)值高(存活對(duì)象少)的區(qū)域(這也是 Gabage First 名稱的由來)。
3.6.4 Mixed Collection (混合垃圾回收)
復(fù)制完成,內(nèi)存得到釋放。進(jìn)入下一輪的新生代回收、并發(fā)標(biāo)記、混合收集
其中H叫做巨型對(duì)象,如果對(duì)象非常大,會(huì)開辟一塊連續(xù)的空間存儲(chǔ)巨型對(duì)象
💖💖💖???????💖???????💖???????💖???????💖???????💖???????💖???????💖💖💖💖💖???????💖???????💖???????💖???????💖??????
熱門專欄推薦
???????
🌈🌈計(jì)算機(jī)科學(xué)入門系列? ? ? ? ? ? ? ? ? ? ?關(guān)注走一波💕💕
🌈🌈CSAPP深入理解計(jì)算機(jī)原理? ? ? ??關(guān)注走一波💕💕
🌈🌈微服務(wù)項(xiàng)目之黑馬頭條? ? ? ? ? ? ? ?? 關(guān)注走一波💕💕
🌈🌈redis深度項(xiàng)目之黑馬點(diǎn)評(píng)? ? ? ? ? ??關(guān)注走一波💕💕
🌈🌈Java面試八股文系列專欄? ? ? ? ? ? 關(guān)注走一波💕💕
🌈🌈算法leetcode+劍指offer??? ? ? ? ? ? ?關(guān)注走一波💕💕
📣非常感謝你閱讀到這里,如果這篇文章對(duì)你有幫助,希望能留下你的點(diǎn)贊👍 關(guān)注? 分享👥 留言💬thanks!!!
📚愿大家都能學(xué)有所得,功不唐捐!