关闭

@strongify以及@weakify宏命令的的使用(1)

109人阅读 评论(0) 收藏 举报
分类:
主要是在block中使用

因为block一般都在对象内部声明.. 如果在block内部使用了当前对象的属性,就会造成循环引用(block拥有当前对象的地址,而当前对象拥有block的地址),而引起内存泄露,block和当前对象都无法释放.

@weakify 将当前对象声明为weak.. 这样block内部引用当前对象,就不会造成引用计数+1可以破解循环引用

@strongify 相当于声明一个局部的strong对象,等于当前对象.可以保证block调用的时候,内部的对象不会释放

大概相当于


那么问题来了,到底什么时候才需要在ObjC的Block中使用weakSelf/strongSelf

看我的第二篇文章:

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:43495次
    • 积分:932
    • 等级:
    • 排名:千里之外
    • 原创:46篇
    • 转载:11篇
    • 译文:6篇
    • 评论:5条
    文章分类
    最新评论