Runtime学习 -- weak
应用源码学习
??Runtime源码分析,带你了解OC实现过程。其中参考了大量的大神的代码以及文献,里面也有个人的见解,欢迎拍砖,欢迎交流。
两种常见使用场景
/// weak属性@interface XX : XX@property(nonatomic,weak) Type* weakPtr;@end/// 代码块中使用{ /// 使用__weak __weak Type* weakPtr = [[SomeObject alloc] init]; }
根据调试信息,发现两者的区别是:
第一种进入到
id objc_storeWeak(id *location, id newObj)方法
```
/**This function stores a new value into a __weak variabl