系统相关
首页 > 系统相关> > 案例:隐秘而低调的内存泄露(OOM)

案例:隐秘而低调的内存泄露(OOM)

作者:互联网

内存泄露测试的整个过程如下:

图 VM Heap 1

图 VM Heap 2


图 Histogram视图

图 with incoming references

图 exclude weak references

小强课堂 在Java中存在强引用、弱引用、软引用,这里给大家做一个普及:

强引用:垃圾回收不会回收它,需要我们主动设置为null。

弱引用:顾名思义比较弱,当垃圾回收发现它只具有弱引用对象时,不管当前内存空间是什么情况,都会进行回收。

软引用:如果它只具有软引用对象时,内存空间足够,垃圾回收器就不会回收。但如果内存空间不足了,就会回收。

这样一步步做下来至少你不会觉得混乱,而是有规可循。另外,有些内存泄露的分析可能没法一次性分析出来,需要多次,这就考验大家的耐心了。其实只要记住,分析要有规可循,耐心必不可少,任何难题都可以解决的。


标签:单击,OOM,隐秘,回收,hprof,内存,Heap,如图,引用
来源: https://blog.51cto.com/xqtesting/2402372