Я посмотрел на инструменты, и я увидел, что распределение увеличило количество удержаний на 1. Пока все ясно. Но присвоение класса моей собственности также увеличило количество удержаний до 2.присвоение имущества и распределение приводит к сохранению счета 2
self.myProperty = [[MyClass alloc] init]
Vs.
MyClass *myCreatedVariable = [[MyClass alloc] init];
self.myProperty = myCreatedVariable
Чтобы уменьшить количество удержаний до нуля, я выпустил myCreatedVariable сразу после моих звонков. Переменная экземпляра myProperty освобождается в методе dealloc. Правильно ли, что свойство только выпущено в методе dealloc?
Теперь мой вопрос:
является выделение и присвоение свойству всегда создавая сохранить счетчик 2? Поэтому не используйте
self.myProperty = [[MyClass alloc] init]
потому что счет сохранения никогда не достигает нуля? Или это только в случае, если я выделяю класс?
Приветствия
Вы никогда не увидите объект с нулевым значением удержания, потому что, как только удержание счета падает до нуля, объект освобождается. – Toastor