内存泄漏与溢出

Posted java_wxid

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了内存泄漏与溢出相关的知识,希望对你有一定的参考价值。

内存泄漏:是指创建的对象已经没有用处,正常情况下应该会被垃圾收集器回收,但是由于该对象仍然 被其他对象进行了无效引用,导致不能够被垃圾收集器及时清理,这种现象称之为内存泄漏。

内存泄漏会导致内存堆积,最终发生内存溢出,导致OOM。 发生内存泄漏大部分是由于程序代码导致的,排查方法一般是使用 visualVM 进行heap dump,查看占用 空间比较多的 class 对象,然后检查该对象的instances 以及 reference引用,最终定位到程序代码。 如果堆内存比较大,进行head dump 产生的资源消耗不可接受,可以尝试使用轻量级的jmap生成堆转储快照 分析,思路与使用可视化工具一样。

以上是关于内存泄漏与溢出的主要内容,如果未能解决你的问题,请参考以下文章

内存泄漏和内存溢出

java内存泄漏与处理

内存溢出(Oom)和内存泄露(Memory leak)

JVM系列之六:内存溢出内存泄漏 和 栈溢出

电脑内存泄漏是怎么回事

内存泄漏和堆栈溢出的区别