偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

JVM調優(yōu)總結:基本垃圾回收算法

開發(fā) 后端 算法
本文將從不同的角度去劃分JVM基本垃圾回收算法:按照基本回收策略、按分區(qū)對待的方式分以及按系統(tǒng)線程去區(qū)分。以下將詳細的介紹。

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

按照基本回收策略分

引用計數(Reference Counting):

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

標記-清除(Mark-Sweep):

 

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

復制(Copying):

 

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

標記-整理(Mark-Compact):

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

按分區(qū)對待的方式分

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

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

按系統(tǒng)線程分

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

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

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

原文鏈接:http://pengjiaheng.iteye.com/blog/520228

【編輯推薦】

  1. JVM調優(yōu)總結:垃圾回收面臨的問題
  2. JVM調優(yōu)總結:一些概念
  3. 用Java GUI編寫的畫板程序
  4. Java的動態(tài)綁定機制
  5. Java中帶復選框的樹的實現和應用
責任編輯:林師授 來源: 和你在一起的博客
相關推薦

2012-01-10 11:19:35

JavaJVM

2012-01-09 17:06:16

JavaJVM

2012-01-10 14:25:36

JavaJVM

2021-02-04 10:43:52

開發(fā)技能代碼

2009-12-25 16:15:31

JVM垃圾回收算法

2010-09-26 11:22:22

JVM垃圾回收JVM

2015-07-06 10:14:25

Java垃圾回收實戰(zhàn)

2017-08-04 10:53:30

回收算法JVM垃圾回收器

2022-01-20 10:34:49

JVM垃圾回收算法

2012-01-10 14:35:08

JavaJVM

2014-12-19 11:07:40

Java

2022-03-21 11:33:11

JVM垃圾回收器垃圾回收算法

2012-01-10 15:13:56

JavaJVM

2021-11-05 15:23:20

JVM回收算法

2010-09-25 13:05:07

JVM參數

2022-06-10 07:13:29

JVM垃圾回收

2012-01-10 14:18:40

JavaJVM

2019-12-20 14:21:26

JVM調優(yōu)垃圾回收

2010-09-26 13:48:51

JVM調優(yōu)

2023-11-23 09:26:50

Java調優(yōu)
點贊
收藏

51CTO技術棧公眾號