首页 > 移动平台 > 详细

iOS内存泄漏检测

时间:2021-02-01 14:47:59      阅读:24      评论:0      收藏:0      [点我收藏+]

内存泄漏检测原理:

内存分类:
1. 泄漏内存
2. 废弃内存:无用场景,Arc时代多见于循环引用
3. 缓存内存

Leaks检测内存泄漏
Allocations检测废弃内存,通过对比屏幕快照的方式发现内存的便捷化

过往的开源库:
HeapInspector-iOS:改进Allocations检测,hook方法alloc/dealloc/retain/release等记录生命周期,需要重复操作,且易有延迟。
MSLeakHunter:只检测UIViewController和UIView,hook-viewDidDisappear方法,但该方法不准确。需要结合实际操作去分析
MleaksFinder:对NSObject增加一个willDealloc方法,在内部使用弱指针调用一个方法,如果该界面释放了,方法就不会执行。AOP-Hook-界面pop和dismiss。遍历所有对象。单例需要自己重载方法,returnNO;
```
- (void)willDealloc {
id weakself;
dispatch_afert_3*sec {
[weakself noDealloc];
}
}

- (void)noDealloc {
NSLog(@"没有释放");
}
```

iOS内存泄漏检测

原文:https://www.cnblogs.com/GOBAT/p/14355719.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!