设为首页 加入收藏

TOP

block本质探寻七之内存管理(四)
2019-08-26 07:00:51 】 浏览:81
Tags:block 本质 探寻 内存 管理
析:当per指针象release时,[[Person alloc] init]实例对象并没有被释放,而当block指针release时,[[Person alloc] init]实例对象才被释放(block对象不再持有该实例对象),这也印证了上述的分析;

 

四、注意

针对第三点(__block修饰对象类型的auto局部变量),系统生成的__block对象(__Block_byref_blockPer_1),其通过内部成员指针变量(Person *__weak blockPer)来持有实例对象([[Person alloc] init]),持有的类型取决于成员指针变量blockPer的类型(强指针则强引用,弱指针则弱引用)——该规则,在第三点情形下并且在MRC模式下,如果是强指针类型,则系统不会进行retain操作(除此,其他情况不受影响)!————所以,在MRC模式下,__block修饰对象类型的auto局部指针变量,新生成的__block对象永远不可能强引用该指针指向的实例对象!

 

GitHub

首页 上一页 1 2 3 4 下一页 尾页 4/4/4
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇笔记:沙盒文件的拷贝 下一篇Swift构造

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目