1,在MRC 时代,__block 修饰,能够避免循环引用;ARC时代,__block 修饰,一样会引发循环引用问题;对象
2,__block无论是ARC仍是MRC模式下均可以使用,能够修饰对象,还能够修饰基本数据类型;循环
3,__weak只能在ARC模式下使用,也只能修饰对象,不能修饰基本数据类型;数据类型
4,__block对象能够在block中被从新赋值,__weak不能够;引用
5,__unsafe_unretained修饰符能够被视为iOS SDK 4.3之前版本的__weak的替代品,不过不会被自动置空为nil。因此尽量不要使用这个修饰符。(__weak 会自动置为nil)数据