美文网首页
iOS 引用循环 retain circle

iOS 引用循环 retain circle

作者: ReidWang | 来源:发表于2017-04-07 18:39 被阅读11次

当在类中声明属性时使用如下方法时:

@interface ExampleClass() {

NSInteger _index

}

如果在接下来某个 block 里调用了 _index 会造成 引用循环,致使 vc 不执行 dealloc 方法;

修改方法 1:直接使用 property 声明属性,

@property (nonatomic, assign) NSInteger index;

总结:

1、在 pop vc 后,在 dealloc 方法内打断点,可以方便的额观察 vc 是否被释放,个人觉得这是一个比较好的编程习惯,如果是对内存管理不是很熟悉的话。

2、发现问题的方法是:在 build setting 里对 IMPLICIT_RETAIN_SELF 设置成 YES,这样会出现在 warn 导航栏下,方便找到可能出现问题的地方。

相关文章

网友评论

      本文标题:iOS 引用循环 retain circle

      本文链接:https://www.haomeiwen.com/subject/kdahattx.html