感谢原作者
在日常中我们经常遇到这样的错误:java.lang.OutOfMemoryError: Java heap space。 但是除了heap space 的OutOfMemoryError,还有其它几种OutOfMemoryError情况。今天我们就来了解一下: 1、java.lang.OutOfMemoryError: Java heap space。 这是因为虚拟机堆的空间所剩不多。当准备创建的对象需要的内存已经超过虚拟机堆所剩的空间。虚拟机会尝试通过full GC来回收内存,如果不行的话,就会抛出OutOfMemoryError。 导致OutOfMemoryError异常的常见原因有以下几种: 【1】内存中加载的数据量过于庞大,如一次性从DB取出过多数据; 【2】集合类中有对象的引用,使用完后未清空,使得JVM不能回收; 【3】代码中存在死循环或循环产生过多重复的对象实体; 【4】启动参数内存值设定的过小。
作者:VIPSHOP_FCS 链接:https://www.jianshu.com/p/ddbd1e229c4c 來源:简书 感谢原作者