Java堆逸出分析

浅堆

一个对象结构所占用的内存大小

深堆

一个对象被GC后,可以真实释放的内存大小

只能通过对象访问到的(直接或者间接)所有对象的深浅之和

堆逸出:

占用大量堆空间,直接逸出,

 解决方法:增大堆空间,及时释放内存。

永久区逸出:

生成大量的类。

解决方法:增大Perm区,允许Class回收。

Java栈逸出

这里的栈溢出指,在创建线程的时候,需要为线程分配栈空间,这个栈空间是向操作系统请求的,如果操作系统无法给出足够的空间,就会抛出OOM。

解决方法:减少堆内存减少线程栈大小

扫描二维码关注公众号,回复: 12964816 查看本文章

直接内存溢出

无法从操作系统获得足够的空间

猜你喜欢

转载自blog.csdn.net/weixin_39443483/article/details/115263812