一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|

服務器之家 - 編程語言 - JAVA教程 - 淺談jvm中的垃圾回收策略

淺談jvm中的垃圾回收策略

2020-06-05 14:49jingxian JAVA教程

下面小編就為大家帶來一篇淺談jvm中的垃圾回收策略。小編覺得挺不錯的,現在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

java和C#中的內存的分配和釋放都是由虛擬機自動管理的,此前我已經介紹了CLR中GC的對象回收方式,是基于代的內存回收策略,其實在java中,JVM的對象回收策略也是基于分代的思想。這樣做的目的就是為了提高垃圾

回收的性能,避免對堆中的所有對象進行檢查時所帶來的程序的響應的延遲,因為jvm執行GC時,會stop the word,即終止其它線程的運行,等回收完畢,才恢復其它線程的操作。基于分代的思想是:jvm在每一次執行垃圾收集器時,只是對一小部分內存

對象引用進行檢查,這一小部分對象的生命周期也更短,從而加快了垃圾收集的性能。下面我們將來介紹java中的基于代的內存回收算法的基本策略:

一、jvm堆內存的分代劃分

在基于分代的內存回收策略中,堆空間通常都被劃分為3個代,年輕代,年老代(或者tenured代),永久代。在年輕代中又被劃分了三個小的區域,分別為:Eden(伊甸)區,S0區(survivor 0),S1區(survivor 1),如下圖所示:

淺談jvm中的垃圾回收策略

其中,新的對象總被分配到年經代中,當年輕代空間被填滿時,這時需要執行一次垃圾回收,即執行 minor GC,回收不再被引用的對象,并同時提升幸存的對象其年齡,年經代中的幸存對象都有年齡標識字段,一旦其達到一定的閾值,則仍然幸存的對象將被提升到老年代空間中。

老年代的空間用于存放長時間幸存的對象,即生命周期較長的對象,一旦年輕代空間的幸存對象達到一定的年齡閾值后,將被自動提升到年老代,當年老代空間被對象填滿時,這時執行一次Major GC。相較于minor GC, Major GC的執行次數要比minor GC要少很多,同時,Major Gc 執行的時間較Minor Gc要長。因為其涉及到更多的對象掃描。這種分代的思想,也是基于在實踐中,對于新分配的對象具有更短的生命周期,年老的對象具有更長的生命周期所作出的較佳的選擇。

與此同時,Minor Gc 和 Major Gc 在執行垃圾收集時,采取的是stop the world event ,即終止正在運行的線程,等GC執行完畢在恢復所有的線程。

對于永久代的內存,主要是用來存放元數據的相關信息,類及其方法的信息。當一個類不再使用時將會被回收,當執行Full GC時,將會掃描永久代內存,對其進行垃圾回收。

二、基于分代的垃圾回收的處理過程


首先,初始時,新對象被分配到Eden區域,s0,s1為空。當Eden中的空間被填滿時,執行一次Minor GC。垃圾收集器會將被引用的對象移動s0區,不再被引用的對象將被刪除,與此同時,對于幸存的對象標識其年齡為1. GC后,Eden和S1區為空如下圖所示。

淺談jvm中的垃圾回收策略

下一次執行Minor GC后,與先前的執行步驟相同,唯一的區別時,這次的被引用的對象,即幸存下來的對象將會被移動到S1區,與此同時在s0區幸存的對象的年齡會增加1,變成2,如下圖所示。

淺談jvm中的垃圾回收策略

當再次,執行Minor GC后,與先前的步驟相同,幸存對象會被移到S0區,給幸存對象年齡加1.如下圖所示

淺談jvm中的垃圾回收策略

最后執行Minor GC 時,發現 S1中的幸存的對象年齡達到8(假設閾值 設為8),此時該對象將被提升到老年代內存中,如下圖所示。

淺談jvm中的垃圾回收策略

淺談jvm中的垃圾回收策略

當老年代堆空間被對象填滿時,將會執行一次Major Gc,將會清除老年代不再被引用的對象,與此同時,對該空間執行壓縮。如下圖所示。

淺談jvm中的垃圾回收策略

以上這篇淺談jvm中的垃圾回收策略就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持服務器之家。

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 欧美一区精品二区三区 | 日本不卡1卡2卡三卡网站二百 | 色狼屋 | 91久久偷偷做嫩草影院免费 | 精品国产91久久久久久久 | 日韩欧美中文字幕一区二区三区 | 果冻传媒在线播放1 | 亚洲欧美影院 | 成人免费网站视频ww | 美女靠逼免费视频 | 为什么丈夫插我我却喜欢被打着插 | 1024毛片 | 亚洲男人天堂2023 | 欧美一级裸片又黄又裸 | 亚洲成人91| 疯狂伦交1一6小说 | ass巨大胖女人sias | 日本在线播放视频 | 6个老师的尿奴 | 久99久热只有精品国产99 | 91四虎国自产在线播放线 | 熟睡中的麻麻大白屁股小说 | 日韩成人在线免费视频 | 俄罗斯freeoo性另类 | 亚洲va久久久噜噜噜久久狠狠 | 国产一区精品视频 | 国产成人免费片在线视频观看 | 国产精品久久久久毛片 | 亚洲高清视频免费 | 操穴勤| 校草太大了h | 99日影院在线播放 | 忘忧草在线社区WWW日本直播 | 无人在线视频高清免费观看动漫 | 果冻传媒和91制片厂网站软件 | 视频污版 | 无限资源在线观看播放 | 国产麻豆流白浆在线观看 | 女王厕便器vk | 国产婷婷综合丁香亚洲欧洲 | 国产成人在线综合 |