为什么把block定义成copy类型
2016-03-24 10:38
211 查看
block有三种:1、全局block 2、栈block 3、堆block
1、用copy:1>全局block(不引用外部变量) 2>栈block (MRC下引用外部变量)3> 堆block (ARC下引用外部变量)
2、用assign(block是结构体),1>全局block(不引用外部变量) 2>不论是在MRC还是在ARC下都是栈block。
而栈block在使用中会带来问题:在一个方法中, 打印block会发现是空,调用block会崩溃(方法返回时栈已经销毁)。
1、用copy:1>全局block(不引用外部变量) 2>栈block (MRC下引用外部变量)3> 堆block (ARC下引用外部变量)
2、用assign(block是结构体),1>全局block(不引用外部变量) 2>不论是在MRC还是在ARC下都是栈block。
而栈block在使用中会带来问题:在一个方法中, 打印block会发现是空,调用block会崩溃(方法返回时栈已经销毁)。
相关文章推荐
- Linux学习笔记20160324
- linux下svn命令大全
- InstallShield制作JSP+TOMCAT+JDK+MYSQL(第一篇)
- Linux并发(POSIX信号量)
- opencv 3.0下遍历文件夹下files
- shell--内建命令--exec
- 9个常用iptables配置实例
- Hadoop RPC远程过程调用源码解析及实例
- Top命令 -转
- tomcat虚拟路径的几种配置方法
- opengl 安装与配置
- ifconfig命令详解
- linux第五章笔记
- OpenCV学习之CvMat的用法详解及实例
- Linux上的大文件如何读取
- seconds_behind_master监控复制推延的不足及pt-heartbeat改进方法
- (转) linux目录结构详细介绍
- Linux shell 变量 数学 运算
- 每天一个linux命令(1):which命令
- Centos6.7 gitlab安装