博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
(一)深入java虚拟机之内存溢出与分析
阅读量:7121 次
发布时间:2019-06-28

本文共 774 字,大约阅读时间需要 2 分钟。

一、内存溢出程序

public class Test {    public static void main(String[] args) {        List
userList=new ArrayList
(); while(true) { userList.add(new User()); } }}
public class User implements Serializable {    /**     *      */    private static final long serialVersionUID = 1L;    private Integer id;    private String userName;    private String pwd;//省略getset方法}
  • 当程序运行起来后一段时间内存就会溢出。

 

二、查看内存溢出情况

  2.1  安装内存分析工具

 

  2.2  运行参数配置

Run as-->Run Configurations-->Arguments-->VM arguments:-Xms20m -Xmx20m -XX:+HeapDumpOnOutOfMemoryError,配置20M当做内存溢出上限,方便测试,具体大小大家可以自己控制。-XX:+HeapDumpOnOutOfMemoryError 配置后,当存溢出就会生成文件。

 

   2.3  运行程序

 

  • 刷新工程,生成文件

 

 

  •  双击打开

 

如上图可知,是main线程的ArrayList内存溢出

 

转载于:https://www.cnblogs.com/shyroke/p/8137694.html

你可能感兴趣的文章
CES Asia专题|中国移动发布全球最小通信模组,助力物联网发展
查看>>
【MySql】赶集网mysql开发36条军规
查看>>
服务越好收入越高,300万快递小哥有了终身成长体系
查看>>
Linux多线程3-3_线程取消
查看>>
exchange 用户建立好之后,无法自动产生邮箱 问题解决
查看>>
斐波那契的四种求法
查看>>
in和exists的区别与SQL执行效率分析
查看>>
阿里巴巴开放“Buy+”购物系统,淘宝造物节约么?
查看>>
ipa-server
查看>>
2018云栖大会深圳峰会-企业级互联网架构专场看点提前大放送!
查看>>
邱剑 | 美团云容器实践之路
查看>>
C#连接Oracle错误:OCIEnvCreate 失败,返回代码为 -1
查看>>
【干货合集】让我们聊一聊如何用世界上最流行的脚本语言——JavaScript写出优美的代码...
查看>>
.net 发送电子邮件
查看>>
阿里云API应用创新大赛总决赛,强者之争即将开启
查看>>
windows 系统监视器 以及建议阀值
查看>>
广州证券携手8Manage 实现数字化管理体验
查看>>
bootstrap-表单控件——按钮
查看>>
[数据结构]约瑟夫环问题
查看>>
Spring系列之AOP分析之获取Advice的过程(四)
查看>>