1.创建一个内存溢出的程序。
2.开始系统内存
3.运行了一会儿可以看出内存持续上涨。
4.直到内存到达一定值的时候程序被停止。因为已经没有足够内存可用了。并在console,抛出异常OutOfMemoryError。
那么一个很大的应用,百万级的代码如何定位内存溢出的代码?
我们需要分析工具来进行定位,我们需要把堆内存转成一个快照,来进行分析。那么如何转成一个快照呢。
快照的文件位置。
文件用记事本打开会乱码需要专门的分析工具打开,例如 Eclipse Memory 打开。
1.创建一个内存溢出的程序。
2.开始系统内存
3.运行了一会儿可以看出内存持续上涨。
4.直到内存到达一定值的时候程序被停止。因为已经没有足够内存可用了。并在console,抛出异常OutOfMemoryError。
我们需要分析工具来进行定位,我们需要把堆内存转成一个快照,来进行分析。那么如何转成一个快照呢。
快照的文件位置。
文件用记事本打开会乱码需要专门的分析工具打开,例如 Eclipse Memory 打开。