最近的一点内存泄露排查心得

前些天 发现 某代码存在内存泄露,使用 二分法+注释的方法很快定位到 某个函数, 发现 是 框架存在内存泄露,以及自己之前修正一个框架BUG 导致新引入的一个局部对象内部分配的堆内存 没释放导致的,这没什么好说的,

但是,随后一个同事也碰到某个代码也有内存泄露的问题,他分析了很久,没定位出问题,让我帮忙看下。
他已经定位到某个比较大的函数发生了内存泄露, 但这个函数内部逻辑较多,调用了若干子函数, 问题在于 这个函数内部流程相关性很强,导致 不好用注释的方法来寻找,

不知怎么地,突然就想到了个方法,这个方法是 注释的反面, 大概方法如下:

假如现在排查某个部分,比如说子函数A 有没有导致内存泄露,那么先执行一遍A, 把A产生的结果,一般就是填充了某些容器,比如vector, 保存起来, 然后把A执行1万遍,反正是个很大的数字,这样, 如果 A 有内存泄露的情况,那么 很容易观察到。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值