论坛首页 Java企业应用论坛

通过GC输出分析内存泄露问题

浏览 29369 次
该帖已经被评为精华帖
作者 正文
   发表时间:2008-10-28  
既然有dump文件了,应该就可以找到原因了。

dump当然不会很直接的告诉你root cause,
但是通过分析dump文件应该可以把问题缩小,然后看相应的代码,问题就能解决。

我不知道你们用不用一个叫做SAP Memory Analyer的工具。非常好用(至少比jhat好太多)。
如果没用过,强烈推荐。
0 请登录后投票
   发表时间:2008-10-28  
我最近也在找一个项目的内存泄漏问题,毫无头绪,哪位能否介绍一下如何才能发现是程序的哪里出现了内存泄漏?
0 请登录后投票
   发表时间:2008-10-29  
disorder 写道
我最近也在找一个项目的内存泄漏问题,毫无头绪,哪位能否介绍一下如何才能发现是程序的哪里出现了内存泄漏?

如果真是内存泄漏,系统最终会抛OutOfMemory, 加这个-XX:+HeapDumpOnOutOfMemoryError (jdk1.5以上)可以得到heap dump. 这个dump纪录了所有在OutOfMemory时存在于内存中的对象。用普通的jhat之类的工具分析dump文件不够好。推荐使用SAP Memory Analyzer。用这个工具你可以比较快的定位原因。

不要说dump没用,dump里面提供了足够的信息。只是看你怎么利用它,分析它。
0 请登录后投票
   发表时间:2009-04-21  
楼上能否详细介绍一下:
在Tocat启动加入-XX:...的位置

当系统崩溃时,记录的文件在哪个目录,文件名字是什么
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics