华南俳烁实业有限公司

考試首頁(yè) | 考試用書(shū) | 培訓(xùn)課程 | 模擬考場(chǎng) | 考試論壇  
全國(guó)  |             |          |          |          |          |         
  當(dāng)前位置:計(jì)算機(jī)等級(jí) > 二級(jí)考試 > Java語(yǔ)言程序設(shè)計(jì) > 考試輔導(dǎo) > 文章內(nèi)容
  

全國(guó)計(jì)算機(jī)二級(jí)考試Java語(yǔ)言程序設(shè)計(jì)知識(shí)點(diǎn)(30)

中華IT學(xué)院   【 】  [ 2016年5月6日 ]

設(shè)置堆的比例分配

  參數(shù)-XX:SurvivorRatio 是用來(lái)設(shè)置新生代中 eden 空間和 s0 空間的比例關(guān)系。s0 和 s1 空間又分別稱為 from 空間和 to 空間。它們的大小是相同的,職能也是相同的,并在 Minor GC 后互換角色。

  清單 15. 所示示例演示不斷插入字符時(shí)使用的 GC 輸出

import java.util.ArrayList;

import java.util.List;

public class StringDemo {

public static void main(String[] args){

List handler = new ArrayList();

for(int i=0;i<1000;i++){

HugeStr h = new HugeStr();

ImprovedHugeStr h1 = new ImprovedHugeStr();

handler.add(h.getSubString(15));

handler.add(h1.getSubString(15));

}

}

static class HugeStr{

private String str = new String(new char[800000]);

public String getSubString(int begin,int end){

return str.substring(begin, end);

}

}

static class ImprovedHugeStr{

private String str = new String(new char[10000000]);

public String getSubString(int begin,int end){

return new String(str.substring(begin, end));

}

}

}

  清單 16. 設(shè)置新生代堆為 10MB,并使 eden 區(qū)是 s0 的 8

-XX:+PrintGCDetails -XX:MaxNewSize=10M -XX:SurvivorRatio=8

  清單 17. 運(yùn)行輸出

  [Full GC [Tenured: 233756K->233743K(251904K), 0.0524229 secs] 

233756K->233743K(261120K),

  [Perm : 377K->372K(12288K)], 0.0524703 secs] [Times: user=0.06 sys=0.00

real=0.06 secs]

  def new generation total 9216K, used 170K [0x270100000x27a10000

0x27a10000)

  eden space 8192K, 2% used [0x270100000x2703a9780x27810000)

  from space 1024K, 0% used [0x279100000x279100000x27a10000)

  to space 1024K, 0% used [0x278100000x278100000x27910000)

  tenured generation total 251904K, used 233743K [0x27a100000x37010000

0x37010000)

  the space 251904K, 92% used [0x27a100000x35e53d000x35e53e00

0x37010000)

  compacting perm gen total 12288K, used 372K [0x370100000x37c10000

0x3b010000)

  the space 12288K, 3% used [0x370100000x3706d3100x3706d400

0x37c10000)

  ro space 10240K, 51% used [0x3b0100000x3b5430000x3b543000

0x3ba10000)

  rw space 12288K, 55% used [0x3ba100000x3c0ae4f80x3c0ae600

0x3c610000)

  修改參數(shù) SurvivorRatio 為 2 運(yùn)行程序,相當(dāng)于設(shè)置 eden 區(qū)是 s0 的 2 倍大小,由于 s1 與 s0 相同,故有 eden=[10MB/(1+1+2)]*2=5MB。

  清單 18. 運(yùn)行輸出

  [Full GC [Tenured: 233756K->233743K(251904K), 0.0546689 secs] 

233756K->233743K(259584K),

  [Perm : 377K->372K(12288K)],0.0547257 secs] [Times: user=0.05 sys=0.00

real=0.05 secs]

  def new generation total 7680K, used 108K [0x270100000x27a10000

0x27a10000)

  eden space 5120K, 2% used [0x270100000x2702b3b00x27510000)

  from space 2560K, 0% used [0x275100000x275100000x27790000)

  to space 2560K, 0% used [0x277900000x277900000x27a10000)

  tenured generation total 251904K, used 233743K [0x27a100000x37010000

0x37010000)

  the space 251904K, 92% used [0x27a100000x35e53d000x35e53e00

0x37010000)

  compacting perm gen total 12288K, used 372K [0x370100000x37c10000

0x3b010000)

  the space 12288K, 3% used [0x370100000x3706d3100x3706d400

0x37c10000)

  ro space 10240K, 51% used [0x3b0100000x3b5430000x3b543000

0x3ba10000)

  rw space 12288K, 55% used [0x3ba100000x3c0ae4f80x3c0ae600

0x3c610000)

分享到:
本文糾錯(cuò)】【告訴好友】【打印此文】【返回頂部
將考試網(wǎng)添加到收藏夾 | 每次上網(wǎng)自動(dòng)訪問(wèn)考試網(wǎng) | 復(fù)制本頁(yè)地址,傳給QQ/MSN上的好友 | 申請(qǐng)鏈接 | 意見(jiàn)留言 TOP
關(guān)于本站  網(wǎng)站聲明  廣告服務(wù)  聯(lián)系方式  站內(nèi)導(dǎo)航  考試論壇
Copyright © 2007-2013 中華考試網(wǎng)(Examw.com) All Rights Reserved
武胜县| 盱眙县| 江达县| 巴林左旗| 库尔勒市| 安塞县| 察隅县| 青铜峡市| 涪陵区| 都昌县| 通许县| 堆龙德庆县| 临夏县| 鲁甸县| 晴隆县| 唐河县| 定兴县| 大田县| 山阳县| 上犹县| 莫力| 周宁县| 六枝特区| 肥城市| 汤阴县| 广宁县| 塘沽区| 奉化市| 郎溪县| 阜南县| 海阳市| 常山县| 奈曼旗| 上栗县| 敖汉旗| 台北县| 新乐市| 扶沟县| 米脂县| 定襄县| 威海市|