iOS内存泄漏检测

内存泄漏检测原理:

内存分类:
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内存泄漏检测

上一篇:axios-http,ajax的封装,axios的使用


下一篇:Android 获取屏幕高度和屏幕宽度