Здесь много статей об избежании удержания циклов с блоками, но как насчет использования классов и методов класса? Скажем, у меня есть класс вроде этого:Класс остается в памяти
// MyClass.h
+ (void)doSomethingAsynch:(void (^)(void))block;
+ (void)doSomethingElse;
и звонящие хотел бы сказать следующее:
[MyClass doSomethingAsynch:^{
[MyClass doSomethingElse];
}
Должен вызывающий объявить unsafe_unretained копию MyClass? Или это класс, похожий на синглтон, который не будет увеличивать количество накоплений? Имеет ли значение, если мы отправим отсчет сохранения класса на Луну, так как мы хотим, чтобы он все время существовал?
ОК спасибо. +1 здесь и + 1/исправить на @Nikolai b/c полезные эмпирические данные по подсчетам класса. – danh