En la página 17 de esta presentación de WWDC14 , dice
¿Trabaja con Objective-C? Aún tengo que administrar grupos de
liberación automática autoreleasepool {/ * código * /}
Qué significa eso? ¿Significa que si mi código base no tiene ningún archivo Objective-C, autoreleasepool {}
es innecesario?
En respuesta a una pregunta relacionada , hay un ejemplo en el que autoreleasepool
puede resultar útil:
- (void)useALoadOfNumbers {
for (int j = 0; j < 10000; ++j) {
@autoreleasepool {
for (int i = 0; i < 10000; ++i) {
NSNumber *number = [NSNumber numberWithInt:(i+j)];
NSLog(@"number = %p", number);
}
}
}
}
Si el código anterior se traduce a Swift y se autoreleasepool
elimina, ¿Swift será lo suficientemente inteligente como para saber que la number
variable debe publicarse después de la primera }
(como lo hacen otros idiomas)?
autoreleasepool
en Swift. Yo Ampliado de su pregunta y le pidió que en los foros dev .