1、block引用局部变量的时候,该变量会作为常量编码到block中,在block中不能被修改。

2、使用 __block修饰的局部变量,不会作为常量被编码到block中,故而在block中可以被修改。

3、在block中引用一个局部的Objective-C对象的时候,该对象会被retain。

4、如果不想局部变量对象在block中被retain,应该使用 __block来修饰相应的局部变量。

5、在block中引用一个实例对象(假设A)的一个实例变量(假设 b),该实例对象(也就是A)会被retain。

6、block本身可以像对象一样copy和release。

  copy方法:a、[_block copy]  b、Block_copy(_block)

  release方法:a、[_block release]  b、Block_release(_block)

7、block创建后,内存是分配在栈上的,调用copy方法,会讲block从栈移动到堆上。

8、当block声明为全局变量的时候,我们应该调用block的copy方法。

最新文章

  1. poj 2378 (dijkstra)
  2. ubifs性能优化分析
  3. python 字符串 转 dict
  4. eclipse 技巧
  5. python批量制作雷达图
  6. 比较C++中的4种类型转换方式
  7. C++ primer里的template用法
  8. 【和我一起学python吧】python的数据类型
  9. Foundation: NSNotificationCenter
  10. 深入剖析Java中的自动装箱和拆箱过程
  11. *max_element函数和*min_element函数
  12. HDU 1001 Sum Problem
  13. TCP/UDP简介
  14. iOS开发:多线程技术概述
  15. 黑窗口输入确定数字弹MessageBox(VirtualProtect())
  16. oracle ebs应用产品安全性-安全性规则
  17. facebook marketing(市场营销) API(3)
  18. 堆溢出学习笔记(linux)
  19. es6+的javascript拓展内容
  20. eclipse编译hbase 1.3.1(转)

热门文章

  1. zabbix 硬盘健康监控
  2. Java HotSpot(TM) 64-Bit Server VM warning: Insufficient space for shared memory file: /tmp/hsperfdata_hadoop/44512
  3. Linux使用命令记录
  4. Selenium2+python自动化29-js处理多窗口【转载】
  5. UVA 437 巴比伦塔 【DAG上DP/LIS变形】
  6. SSOJ 2316 面积【DFS/Flood Fill】
  7. FZU-2270 Two Triangles(两个三角形全等)
  8. Jmeter插件之PerfMon监控插件使用说明
  9. Super Ugly Number -- LeetCode
  10. 【bzoj2839】【集合计数】容斥原理+线性求阶乘逆元小技巧