weak对象释放为nil原理

2023-02-14  本文已影响0人  kuso思密达

在前文Dealloc中会调用objc_clear_deallocating;

此方法中会调用sidetable_clearDeallocating方法,实际最终会调用weak_entry_for_referent(weak_table, referent)在该方法中通过  referent 对象 找到弱引用表里的entry实体,在该实体中保存有该对象的弱引用数组referrers,数组中存储的是弱引用指针,循环该数组并置空,置空后再弱引用表中移除实体weak_entry_remove

上一篇 下一篇

猜你喜欢

热点阅读