JVM图形化工具之Visual VM的简单使用

找到占用CPU时间最长的方法

例1:
在这里插入图片描述
例2:
在这里插入图片描述
在这里插入图片描述

分析堆dump

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

比较两个堆转储文件

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
今日推荐