创建CFArray对象
NSMutableArray *array = (__bridge_transfer NSMutableArray *)CFArrayCreateMutable(nil, 0, nil);
需求
有很多类需要加通知,通知更新视图,把所有的通知都添加到一个单利的数组里面,遍历数组去执行视图的更新,
用NSArray 管理对象循环引用
- 用NSArray 里面放通知的对象,造成了强引用,这样导致这个类无法释放。
用底层CFArray管理对象
-
这样并不会增加对象的引用计数,对象能正常释放,
-
但需要注意在对象被dealloc时,移除CFArray的引用关系,不然会形成野指针,导致崩溃。