【发布时间】:2012-09-12 00:37:06
【问题描述】:
如果我没有使用“objc_setAssociatedObject”将对象/键关联到 NSObject,然后调用“objc_getAssociatedObject”,这样安全吗?
我已经在模拟器中对其进行了测试,它没有崩溃,但我想确定一下。
当我打电话时:
objc_setAssociatedObject(self, key, value, OBJC_ASSOCIATION_RETAIN);
当我的 NSObject 被释放时,我与我的 NSObject 关联的对象是否会被释放? (我正在使用 ARC)。
【问题讨论】:
-
鉴于 ARC 的工作方式,ARC 似乎不太可能为您插入
objc_setAssociatedObject和nil或objc_removeAssociatedObjects- 因为它不知道将这些呼叫放在哪里。但我在文档中找不到明确的答案。
标签: objective-c automatic-ref-counting nsobject objective-c-runtime