原理:当一个对象被weak指针指向时,这个weak指针会以对象为key,储存到sideTable
类的weak_table
散列表对应的一个weak指针数据组里面,当这个对象的dealloc
方法出发时,runtime
会以obj
为key
,从这个散列表中,将weak
指针逐个置为nil
。