1. 程式人生 > >關聯對象的數據結構

關聯對象的數據結構

adding ted sso oci cti pri body val add

  1. AssociationsManager 是頂級的對象,維護了一個從 spinlock_t 鎖到 AssociationsHashMap 哈希表的單例鍵值對映射;

  2. AssociationsHashMap 是一個無序的哈希表,維護了從對象地址到 ObjectAssociationMap 的映射;

  3. ObjectAssociationMap 是一個 C++ 中的 map ,維護了從 key 到 ObjcAssociation 的映射,即關聯記錄;

  4. ObjcAssociation 是一個 C++ 的類,表示一個具體的關聯結構,主要包括兩個實例變量,_policy 表示關聯策略,_value 表示關聯對象。

http://blog.leichunfeng.com/blog/2015/06/26/objective-c-associated-objects-implementation-principle/

關聯對象的數據結構