iOS block 个人理解
2015-10-22 17:29
274 查看
关于iOS 中block涉及循环引用的问题:
1.首先只有控制器拥有block,在block中引用self才会涉及循环引用
2.block块执行时,是转化为另一个对象中的方法
3.当前控制器创建了拥有此block的对象,才能调用block方法
4.如果在block中用self就意味着block所属的对象中还要强引用当前控制器会造成循环引用
5.所以修改block块中对当前控制器对象的引用级别,设定为weak避免循环引用。
1.首先只有控制器拥有block,在block中引用self才会涉及循环引用
2.block块执行时,是转化为另一个对象中的方法
3.当前控制器创建了拥有此block的对象,才能调用block方法
4.如果在block中用self就意味着block所属的对象中还要强引用当前控制器会造成循环引用
5.所以修改block块中对当前控制器对象的引用级别,设定为weak避免循环引用。
相关文章推荐
- iOS开发:深入理解GCD 第二篇(dispatch_group、dispatch_barrier、基于线程安全的多读单写)
- 为ios购买请求添加自定义数据
- iOS中的沙盒路径
- iOS中设置导航栏标题的字体颜色和大小
- IOS开发:iOS的xmppframework简介
- IOS开发 如何获取搜狗输入法键盘高度
- ios 自学之路
- iOS 加载本地html文件详细操作
- iOS内购丢单处理及实现
- ios日期格式转换
- 国际化
- Core Animation 的隐式动画
- IOS中setSeparatorInsets无效
- IOS多线程开发其实很简单
- iOS 支付宝 下载路径
- iOS开发在项目中添加文件夹的步骤
- ios开发系列-准备工作
- iOS开发本地缓存(数据离线缓存、读取、释放)
- ios NSUserDefaults存储数据(偏好设置)
- iOS9适配系列教程