1、堆内存溢出
2、没有连续的内存空间分配;这个主要是因为内存碎片过多(标记清除算法),导致即便内存够用,也会造成OOM
3、打开过多的文件;如果有碰到这个异常OOM:open to many file的伙伴,应该就知道了;
4、虚拟内存空间不足;
5、开启过多的线程;一般情况下,开启一个线程大概会分配500k的内存,如果开启线程过多同样会导致OOM
1、堆内存溢出
2、没有连续的内存空间分配;这个主要是因为内存碎片过多(标记清除算法),导致即便内存够用,也会造成OOM
3、打开过多的文件;如果有碰到这个异常OOM:open to many file的伙伴,应该就知道了;
4、虚拟内存空间不足;
5、开启过多的线程;一般情况下,开启一个线程大概会分配500k的内存,如果开启线程过多同样会导致OOM