KVO底層原理
涉及到了runtime,關(guān)于isa指針
1征讲、當(dāng)一個類(A)的屬性被觀察的時候,系統(tǒng)會通過runtime動態(tài)的創(chuàng)建一個A類的派生類(B)
2墩朦、B類繼承于A類
3烟号、將A類的isa指針指向B類
4绊谭、在B類中重寫被觀察的屬性的setter方法
5、重寫的setter方法會在調(diào)用原setter方法前后汪拥,通知觀察對象值得改變
20161027152927970.jpg
引用 http://blog.csdn.net/yangyangzhang1990/article/details/52945701
內(nèi)存管理
兩張表 一張引用計數(shù)表
一張引用地址表
引用計數(shù)表保存 引用計數(shù)數(shù)值达传、是否有若引用
引用地址表保存 引用地址列表(弱引用地址列表)
當(dāng)對象將要銷毀時 判斷是否有弱引用,有弱引用遍歷弱引用地址列表置為nil 執(zhí)行銷毀操作
引用 http://www.reibang.com/p/ef6d9bf8fe59