Я понимаю, что Objective C сохранит localVariable
,
id localVariable = instanceVariable;
dispatch_async(queue, ^{
// localVariable is used by value, localVariable is retained (not self)
doSomethingWithObject(localVariable);
});
но это сохранение происходит только при срабатывании блока? если это так, в то время как localVariable
является объектом пользовательского интерфейса, таким как UIViewController
, который может управляться пулом автовыпуска, если я просто создам UIViewController
, управляемый пулом автовыпуска, и не буду его сохранять или использовать, пока один цикл событий завершен, он будет освобожден, тогда внутри блока я больше не могу использовать этот UIViewController
? и я должен сохранить его вручную вне блока?