当前位置:首页 > jprofiler9.2入门教程
初步判断存在Memory Leak后,进入 Live Memory -all Objects 进行详细观察。在右侧右击选择Mark current Values对类实例变化情况进行标记
标记后如下:
显示会多出一列Difference,表示当前对象的实例数量较标记时间点对象数量的偏移量(正增量或负增量)。 Difference降序排列,执行run GC,观察该对象实例的变化量。若增量持续增加,垃圾回收后,也不 降低,说明该对象存在内存泄漏问题。右击选择 show selection In Heap walker 进入堆视图,查看对象的引
和被引用情况,查找泄漏根源。例如,本案例发现String对象持续占用内存且run GC后不释放,怀疑是内 存泄漏进入堆视图查看对象引用情况
进入堆视图时在对象上右击选择Use selected Instances 查看对象的引用情况。
点击Use selected Instances弹出如下对话框
选择引用类型
incoming 表示显示这个对象被谁引用; outcoming 表示显示这个对象引用的其他对象;
以下对象引用的界面图
以上视图发现很多无关引用,貌似和目前监控的项目无关的引用。这时只需点击Use选择框选择Selected Objects指定目标对象即可
在比较可疑的引用上右击选择Show In Graph 进入对象引用视图
共分享92篇相关文档