block的底层实现

2018-11-13  本文已影响3人  微_涼
block有3中类型,根据它们在内存中的分布,划分为以下种类: image.png
之所以会在内存中这样分布,和我们在使用block访问的变量有关系: image.png
在ARC对的情况下,当我们访问了auto变量时,系统会自动调用copy方法,把stack类型的block转换成了malloc类型的block. 我们把block编译成C++代码时,如下图所示: image.png
image.png

block的变量捕捉机制:


image.png
上一篇 下一篇

猜你喜欢

热点阅读