我想知道如何释放强大的财产。我想澄清为什么我打算这样做。我通过这个属性声明拥有一个对象:
@interface MyClass : NSObject {
__strong MyObject *myHeavyObject;
}
@end
我用某种方法创建这个对象,我在另一种方法中使用它,依此类推。
- (void)someMethod {
myHeavyObject = [[MyObject alloc] init];
...
}
- (void)someOtherMethod {
id response = [myHeavyObject getResponse];
}
然而,在某些时候,我知道我不再需要它,因为它很重,我想摆脱它:
- (void)someCallDidFinish {
//i no longer need myHeavyObject...how do I get rid of it?
}
我不想等到dealloc,因为那可能是很长一段时间。我知道我不再使用这个物体了,所以怎么能让它消失呢?如何在ARC范例中支持这一点?这是否合理要求?
应
答案 0 :(得分:5)
将其设置为零。设置新值时将释放旧值。