内射老阿姨1区2区3区4区_久久精品人人做人人爽电影蜜月_久久国产精品亚洲77777_99精品又大又爽又粗少妇毛片

基于JVM中常見垃圾收集算法介紹-創(chuàng)新互聯(lián)

JVM 中常見的垃圾收集算法有四種:

創(chuàng)新互聯(lián)不只是一家網(wǎng)站建設的網(wǎng)絡公司;我們對營銷、技術、服務都有自己獨特見解,公司采取“創(chuàng)意+綜合+營銷”一體化的方式為您提供更專業(yè)的服務!我們經(jīng)歷的每一步也許不一定是最完美的,但每一步都有值得深思的意義。我們珍視每一份信任,關注我們的網(wǎng)站建設、成都做網(wǎng)站質(zhì)量和服務品質(zhì),在得到用戶滿意的同時,也能得到同行業(yè)的專業(yè)認可,能夠為行業(yè)創(chuàng)新發(fā)展助力。未來將繼續(xù)專注于技術創(chuàng)新,服務升級,滿足企業(yè)一站式網(wǎng)絡營銷推廣需求,讓再小的品牌網(wǎng)站制作也能產(chǎn)生價值!

標記-清除算法(Mark-Sweep);

復制算法(Copying);

標記-整理(Mark-Compact);

分代收集;

下面我們來一一介紹:

一、標記-清除算法(Mark-Sweep)

這是最基礎的垃圾收集算法,算法分為“標記”和“清除”兩個階段:首先標記出所有需要回收的對象,在標記完成后統(tǒng)一回收掉所有被標記的對象。它的主要缺點有兩個:一個是效率問題,標記和清除效率都不高;另一個是空間問題,標記清除后會產(chǎn)生大量不連續(xù)的內(nèi)存碎片,空間碎片太多可能會導致分配大對象時沒有足夠的大的連續(xù)空間,而不得不提前觸發(fā)另一次垃圾收集動作。

二、復制算法(Copying)

為了解決效率問題,有了“復制”的算法,他將可用內(nèi)存分為大小相同兩塊。每次只用一塊,當一塊空間用完了,就將還存活的對象復制到另一塊上,然后將剛使用過的內(nèi)存空間一次清理掉。這樣使得每次都是對其中的一塊進行內(nèi)存回收,內(nèi)存分配時也就不用考慮內(nèi)存碎片等復雜情況。實現(xiàn)簡單,運行高效。只是這種算法的代價是將內(nèi)存縮小到原來的一半,代價太貴了點。實際上,新生代中的對象98%都是朝生夕死,所以不需要按1:1的比例來分內(nèi)存,而是將內(nèi)存分為一塊較大的Eden空間和兩塊較小的Survivor空間,每次使用Eden空間和其中一塊Survivior空間。當回收時,將Eden和Survivor中還存活的對象一次性的拷貝到另一塊Suivivior中,最后清理掉Eden和剛用過的Survivor空間。

三、標記-整理(Mark-Compact)

復制收集算法在對象存活率高的時候就要執(zhí)行較多的復制操作,效率將會變低。更關鍵的是,如果不想浪費50%的空間,就需要有額外的空間進行分配擔保用于應付半?yún)^(qū)內(nèi)存中所有對象都100%存活的極端情況,所以在老年代一般不能直接選用這種算法。

因此人們提出另外一種“標記-整理”(Mark-Compact)算法由于老年代中的對象生存周期都較長,有人提出“標記-整理”算法,標記過程和“標記-清理”一樣,但在清除已死對象的同時會對存活對象進行整理,這樣可以減少碎片空間。

四、分代收集

當前商業(yè)虛擬機的垃圾收集都是采用“分代收集”(Generational Collecting)算法,這種算法并沒有什么新的思想出現(xiàn),只是根據(jù)對象不同的存活周期將內(nèi)存劃分為幾塊。一般是把Java堆分作新生代和老年代,這樣就可以根據(jù)各個年代的特點采用最適當?shù)氖占惴?。在新生代中,每次垃圾收集時都發(fā)現(xiàn)有大批對象死去,只有少量存活,那就用復制算法,只要少量復制成本就可以完成收集。而老年代中因為對象的存活率較高、周期長,就用“標記-整理”或“標記-清除”算法來回收。

以上這篇基于JVM 中常見垃圾收集算法介紹就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持創(chuàng)新互聯(lián)。

網(wǎng)站名稱:基于JVM中常見垃圾收集算法介紹-創(chuàng)新互聯(lián)
本文路徑:http://www.rwnh.cn/article40/djhoeo.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供商城網(wǎng)站、自適應網(wǎng)站、網(wǎng)站制作、網(wǎng)站設計App開發(fā)、響應式網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站優(yōu)化排名
鹿邑县| 吉水县| 株洲县| 嘉兴市| 昌图县| 洛隆县| 武汉市| 昌邑市| 鹤庆县| 永寿县| 松溪县| 商都县| 泽库县| 古浪县| 湖口县| 清河县| 亳州市| 武宣县| 高密市| 昌乐县| 青铜峡市| 随州市| 宁化县| 容城县| 泸溪县| 即墨市| 汾西县| 尚志市| 无锡市| 双鸭山市| 凌源市| 南召县| 阳朔县| 长垣县| 乌兰浩特市| 凤凰县| 城口县| 安化县| 三明市| 奉新县| 泽州县|