Block

Block的变量捕获(capture)

Block的类型

Block的类型.png

Block调用copy之后

如何区分Block的类型

MRC:

Global:没有访问auto变量
Stack: 有访问auto变量,系统自动管理内存,会有提前释放的可能,不必担心循环引用问题
Malloc:NSStackBlock调用copy操作
ARC:
Global:没有访问auto变量
Stack: 有访问auto变量,ARC下系统会自动调用copy把NSStackBlock变成NSMallocBlock
Malloc:NSStackBlock调用copy操作

你可能感兴趣的:(Block)