内存溢出

2017-04-18  本文已影响14人  今有所思

Java堆溢出

Java堆用于存储对象实例,只要不断的创建对象,并且保证GC Roots到对象之间有可达路径来避免垃圾回收机制来清除这些对象,那么对象数量到达最大堆容量限制后就会产生内存溢出异常。

虚拟机栈和本地方法栈溢出

关于虚拟机栈和本地方法栈可以出现以下两种异常:

方法区和运行时常量池溢出

本机直接内存溢出

DirectMemory导致的内存溢出,一个明显的特征是在Heap Dump文件中不会看见明显的异常,如果发现OOM之后文件很小,而程序中有直接或简介使用了NIO,那就可以考虑一下是不是这方面的原因。

上一篇下一篇

猜你喜欢

热点阅读