освобождение сильной собственности - PullRequest
1 голос
/ 19 декабря 2011

Я хотел бы знать, как освободить сильную собственность.Я хотел бы уточнить, почему я собираюсь это сделать.У меня есть объект через это объявление свойства:

@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?
}

Я не хочу ждать до освобождения, так как это может занять много времени,Я знаю, что больше не использую этот объект, так как я могу заставить его уйти?Как это поддерживается в парадигме ARC?Это разумно спросить?

Ин

1 Ответ

5 голосов
/ 19 декабря 2011

Просто установите его на ноль.Старое значение будет освобождено при установке нового.

...