OpenFusion memory leak II

本文深入探讨了使用MAT等工具进行Java程序Debug的方法,包括如何定位问题根源,利用工具发现并解决问题的过程。重点分析了如何通过断开网线、异常退出等方式导致Corba对象无法被销毁,进而导致特定对象泄漏的问题,并提供了详细的解决策略。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. 使用MAT确定了泄漏的对象类型为T,通过反编译fusion的源代码,发现toString()方法为“Filter”,猜想T为Filter。

2. 如何对导致Filter泄漏呢?断开网线?异常退出?通过验证,以上两种均可以导致Corba对象无法被销毁,进而导致T对象泄漏在OpenFusion中。

总结下Java程序的debug,

1. 总是可以找到根源的,随着时间的推移,对问题的理解也在深入。

2. 发现问题的苗头时,应该接着深挖下去,比如发现T为Filter,可以想到什么地方创建了Filter?

3. 利用工具MAT, JProfiler等。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值