- 名称 MLeaksFinder,下载地址https://github.com/Tencent/MLeaksFinder
- 用法:直接pod install 安装成功后无需任何操作,在app运行过程中,当一个控制器页面pop时没有正常销毁,控制台则打印
Possibly Memory Leak.
In case that xxxViewController should not be dealloced, override -willDealloc in POQOpinionVC by returning NO.
View-ViewController stack: (
xxxViewController
)
界面则显示
image.png
然后根据提示去所在的控制器中排查可能出现的循环引用,比如:block 里 没有用 weak self,或者block内不可以直接用 _variable(下划线成员变量),用weak self 的get方法去访问
- 为什么UIView的animation block 和 AF的block不需要考虑循环引用呢?
- UIView的block是一个类方法,当前对象没有对类进行强引用,所以不会形成循环
- AF在执行方法的时候,当前对象同样也没有对AF的manager对象进行引用。
如果想去掉提示,在出问题的控制器内添加方法
- (BOOL)willDealloc {
return NO;
}
the end.
网友评论