Objective-C弱引用对象存储与释放机制分析
在 Objective-C 中,弱引用对象的存储和释放由 SideTable
、weak_table
和 weak_entry_t
结构协同管理。
当创建弱引用时:
- 系统通过对象的地址查找对应的
SideTable
。 SideTable
中的weak_table
会根据被引用对象的地址查找或创建对应的weak_entry_t
结构。weak_entry_t
结构中存储了指向所有弱引用该对象的指针。
当对象被销毁时,系统会根据对象的地址找到对应的 SideTable
和 weak_entry_t
结构,并将该结构中所有指向该对象的弱引用指针置为 nil
。
109.16MB
文件大小:
评论区