<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Junky's IT Notebook

    統(tǒng)計

    留言簿(8)

    積分與排名

    WebSphere Studio

    閱讀排行榜

    評論排行榜

    JVM的垃圾回收機制詳解和調優(yōu)

      1.JVM的gc概述

      gc即垃圾收集機制是指jvm用于釋放那些不再使用的對象所占用的內存。java語言并不要求jvm有gc,也沒有規(guī)定gc如何工作。不過常用的jvm都有gc,而且大多數(shù)gc都使用類似的算法管理內存和執(zhí)行收集操作。

      在充分理解了垃圾收集算法和執(zhí)行過程后,才能有效的優(yōu)化它的性能。有些垃圾收集專用于特殊的應用程序。比如,實時應用程序主要是為了避免垃圾收集中斷,而大多數(shù)OLTP應用程序則注重整體效率。理解了應用程序的工作負荷和jvm支持的垃圾收集算法,便可以進行優(yōu)化配置垃圾收集器。

      垃圾收集的目的在于清除不再使用的對象。gc通過確定對象是否被活動對象引用來確定是否收集該對象。gc首先要判斷該對象是否是時候可以收集。兩種常用的方法是引用計數(shù)和對象引用遍歷。

    1.1.引用計數(shù)
      引用計數(shù)存儲對特定對象的所有引用數(shù),也就是說,當應用程序創(chuàng)建引用以及引用超出范圍時,jvm必須適當增減引用數(shù)。當某對象的引用數(shù)為0時,便可以進行垃圾收集。

    1.2.對象引用遍歷
      早期的jvm使用引用計數(shù),現(xiàn)在大多數(shù)jvm采用對象引用遍歷。對象引用遍歷從一組對象開始,沿著整個對象圖上的每條鏈接,遞歸確定可到達(reachable)的對象。如果某對象不能從這些根對象的一個(至少一個)到達,則將它作為垃圾收集。在對象遍歷階段,gc必須記住哪些對象可以到達,以便刪除不可到達的對象,這稱為標記(marking)對象。

      下一步,gc要刪除不可到達的對象。刪除時,有些gc只是簡單的掃描堆棧,刪除未標記的未標記的對象,并釋放它們的內存以生成新的對象,這叫做清除(sweeping)。這種方法的問題在于內存會分成好多小段,而它們不足以用于新的對象,但是組合起來卻很大。因此,許多gc可以重新組織內存中的對象,并進行壓縮(compact),形成可利用的空間。

      為此,gc需要停止其他的活動活動。這種方法意味著所有與應用程序相關的工作停止,只有gc運行。結果,在響應期間增減了許多混雜請求。另外,更復雜的gc不斷增加或同時運行以減少或者清除應用程序的中斷。有的gc使用單線程完成這項工作,有的則采用多線程以增加效率。

    posted on 2006-06-04 22:16 junky 閱讀(317) 評論(1)  編輯  收藏 所屬分類: java

    評論

    # re: JVM的垃圾回收機制詳解和調優(yōu) 2006-08-02 18:44 youke

    the title is big  回復  更多評論   

    主站蜘蛛池模板: 在线a毛片免费视频观看| 亚洲精品123区在线观看| 日本一道本高清免费| 免费成人在线电影| 羞羞视频免费网站日本| 香蕉大伊亚洲人在线观看| 亚洲国产精品久久| 亚洲精品制服丝袜四区| 免费人妻无码不卡中文字幕18禁| 国产又黄又爽又猛免费app| 免费看男人j放进女人j免费看| 国产亚洲精品91| 亚洲人成电影网站免费| 亚洲国产成+人+综合| 99人中文字幕亚洲区| 国产成人亚洲综合无码精品 | 亚洲国产精品久久久久网站| 久久亚洲国产精品123区| 免费a级毛片无码av| 免费观看的av毛片的网站| 国产香蕉九九久久精品免费 | 亚洲AV色吊丝无码| 亚洲国产成人综合| 亚洲国色天香视频| 2022年亚洲午夜一区二区福利| 亚洲成Av人片乱码色午夜| 国产AV无码专区亚洲Av| 亚洲熟女少妇一区二区| 亚洲老妈激情一区二区三区| 亚洲宅男天堂在线观看无病毒| 亚洲女同成人AⅤ人片在线观看| 免费h成人黄漫画嘿咻破解版| 国产成人免费A在线视频| 四虎永久免费地址在线观看| 四虎永久免费影院在线| 亚洲乱亚洲乱少妇无码| 久久久久亚洲av成人无码电影| 亚洲午夜久久久久妓女影院| 亚洲αv久久久噜噜噜噜噜| 亚洲av无码一区二区三区网站| 亚洲va在线va天堂va不卡下载|