91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

JVM基本垃圾回收算法

發布時間:2021-09-17 21:46:14 來源:億速云 閱讀:122 作者:chen 欄目:編程語言

這篇文章主要介紹“JVM基本垃圾回收算法”,在日常操作中,相信很多人在JVM基本垃圾回收算法問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”JVM基本垃圾回收算法”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

可以從不同的的角度去劃分垃圾回收算法:

按照基本回收策略分

引用計數(Reference Counting):

比較古老的回收算法。原理是此對象有一個引用,即增加一個計數,刪除一個引用則減少一個計數。垃圾回收時,只用收集計數為0的對象。此算法最致命的是無法處理循環引用的問題。

標記-清除(Mark-Sweep):

JVM基本垃圾回收算法

此算法執行分兩階段。***階段從引用根節點開始標記所有被引用的對象,第二階段遍歷整個堆,把未標記的對象清除。此算法需要暫停整個應用,同時,會產生內存碎片。

復制(Copying):

JVM基本垃圾回收算法

此算法把內存空間劃為兩個相等的區域,每次只使用其中一個區域。垃圾回收時,遍歷當前使用區域,把正在使用中的對象復制到另外一個區域中。次算法每次只處理正在使用中的對象,因此復制成本比較小,同時復制過去以后還能進行相應的內存整理,不會出現“碎片”問題。當然,此算法的缺點也是很明顯的,就是需要兩倍內存空間。

標記-整理(Mark-Compact):

JVM基本垃圾回收算法

此算法結合了“標記-清除”和“復制”兩個算法的優點。也是分兩階段,***階段從根節點開始標記所有被引用對象,第二階段遍歷整個堆,把清除未標記對象并且把存活對象“壓縮”到堆的其中一塊,按順序排放。此算法避免了“標記-清除”的碎片問題,同時也避免了“復制”算法的空間問題。

按分區對待的方式分

增量收集(Incremental Collecting):實時垃圾回收算法,即:在應用進行的同時進行垃圾回收。不知道什么原因JDK5.0中的收集器沒有使用這種算法的。

分代收集(Generational Collecting):基于對對象生命周期分析后得出的垃圾回收算法。把對象分為年青代、年老代、持久代,對不同生命周期的對象使用不同的算法(上述方式中的一個)進行回收。現在的垃圾回收器(從J2SE1.2開始)都是使用此算法的。

按系統線程分

串行收集:串行收集使用單線程處理所有垃圾回收工作,因為無需多線程交互,實現容易,而且效率比較高。但是,其局限性也比較明顯,即無法使用多處理器的優勢,所以此收集適合單處理器機器。當然,此收集器也可以用在小數據量(100M左右)情況下的多處理器機器上。

并行收集:并行收集使用多線程處理垃圾回收工作,因而速度快,效率高。而且理論上CPU數目越多,越能體現出并行收集器的優勢。

并發收集:相對于串行收集和并行收集而言,前面兩個在進行垃圾回收工作時,需要暫停整個運行環境,而只有垃圾回收程序在運行,因此,系統在垃圾回收時會有明顯的暫停,而且暫停時間會因為堆越大而越長。

到此,關于“JVM基本垃圾回收算法”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

jvm
AI

综艺| 木兰县| 樟树市| 金堂县| 修文县| 邓州市| 临邑县| 富裕县| 周至县| 福鼎市| 临泽县| 庆元县| 达孜县| 大连市| 平江县| 上虞市| 通江县| 塔城市| 孝义市| 吉安县| 凯里市| 麻栗坡县| 紫阳县| 达日县| 华坪县| 格尔木市| 岗巴县| 小金县| 于都县| 兴城市| 班玛县| 金乡县| 商城县| 南皮县| 神农架林区| 浠水县| 临城县| 剑河县| 涞水县| 遂昌县| 古丈县|