JVMグラフィカルツールとしてのVisualVMの簡単な使用

最もCPU時間を費やす方法を見つける

例1:
ここに画像の説明を挿入
例2:
ここに画像の説明を挿入
ここに画像の説明を挿入

ヒープダンプを分析する

ここに画像の説明を挿入
ここに画像の説明を挿入
ここに画像の説明を挿入

2つのヒープダンプファイルを比較する

import java.util.ArrayList;
import java.util.Random;
/**
 * -Xms30m -Xmx30m -XX:SurvivorRatio=8 -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+PrintGCTimeStamps
 */
public class OOMTest {
    
    
    public static void main(String[] args) throws InterruptedException {
    
    
        ArrayList<Box> list = new ArrayList<>();
        while(true){
    
    
            Thread.sleep(20);
            list.add(new Box(new Random().nextInt(1024 * 56)));
        }
    }
}

class Box{
    
    
    private byte[] data;

    public Box(int length) {
    
    
        this.data = new byte[length];
    }
}

ここに画像の説明を挿入
ここに画像の説明を挿入

おすすめ

転載: blog.csdn.net/fengsheng5210/article/details/123713758