当前位置: 首页 > Java > 正文

Java OOM示例、原因查找和解决(四)

1 星2 星3 星4 星5 星 (2 次投票, 评分: 5.00, 总分: 5)
Loading ... Loading ...
baidu_share

以-Xms20m -Xmx20m -Xmn10m -XX:+HeapDumpOnOutOfMemoryError执行com.bluedavy.oom.JavaHeapSpaceCase4

在控制台可看到大量的java.lang.OutOfMemoryError: Java heap space,把生成的hprof文件放入MAT中进行分析,可看到TaskExecutor中的handlers占据了大量的内存,分析代码,发现是由于在task处理完后没有清除掉对应的handler造成的,修改即可解决此OOM问题。

这是个典型的内存泄露的例子,如果不小心持有了本应释放引用的对象,那么就会造成内存泄露,这是在编写Java程序时需要特别注意的地方。

本文固定链接: http://www.chepoo.com/java-oom-demo-error-solution-4.html | IT技术精华网

Java OOM示例、原因查找和解决(四):等您坐沙发呢!

发表评论