释放强大的财产

时间:2011-12-18 21:27:58

标签: objective-c ios5 automatic-ref-counting

我想知道如何释放强大的财产。我想澄清为什么我打算这样做。我通过这个属性声明拥有一个对象:

@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范例中支持这一点?这是否合理要求?

1 个答案:

答案 0 :(得分:5)

将其设置为零。设置新值时将释放旧值。