遇到面试经常会被问道weak的实现原理,今天查了下资料,实现原理如下:
1,整个程序中可以有很多对象被弱引用
2,一个对象可以弱引用多次
我们实现的逻辑就是强引用销毁后,找到弱引用指针置空
iOS有2张表来实现这个逻辑,一个是数组存储所有弱引用对象,一个是对象指针为key 弱引用指针数组为value,释放的时候通过数组找到对象指针,然后通过指针找到所有弱引用指针,逐次置空
weak实现原理
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- weak 实现原理的概括 Runtime维护了一个weak表,用于存储指向某个对象的所有weak指针。weak表其...