關於GC 垃圾回收的問題

package com.tanruyu.jvm.gc.learn;

/**
 *  驗證何時進行垃圾收集
 *
 *  -verbose:gc
    -Xms20M   堆初始內存
    -Xmx20m   堆最大內存
    -Xmn10M   堆中的新生代內存大小
    -XX:+PrintGCDetails
    -XX:SurvivorRatio=8 新生代中的Eden 與 Survivor 內存大小比例
 *
 * @author ruyu.tan
 * @version V1.0
 * @ClassName: GCTest1
 * @date 13:39
 */
public class GCTest1 {

    public static void main(String[] args) throws InterruptedException {
        int sizeK = 1024;
        int size = 1024 * 1024;
        byte [] b1 = new byte [2 * size];
        System.out.println("第1個輸出語句");

        Thread.sleep(2000);

        byte [] b2 = new byte [2 * size];
        System.out.println("第2個輸出語句");

//        byte [] b3 = new byte [2 * size];
        byte[] b22 = new byte [1880 * sizeK];
//        byte[] b22 = new byte [1877 * sizeK];
        System.out.println("第3個輸出語句");
//        byte [] b4 = new byte [2 * size];
//        System.out.println("第4個輸出語句");
        System.out.println(b1.length);

    }


}

 

然後啓動參數:

-verbose:gc
-Xms20M   堆初始內存
-Xmx20m   堆最大內存
-Xmn10M   堆中的新生代內存大小
-XX:+PrintGCDetails
-XX:SurvivorRatio=8 新生代中的Eden 與 Survivor 內存大小比例

但是下圖通過調整創建數組對象的大小,從而觸發Minor GC:

 

 

關於上圖中,並沒有看到各區並沒有看到數組對象經過回收後,內存佔用位於何處?

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章