A pagina 17 di questa presentazione WWDC14 , si dice
Lavorare con Objective-C? Devo ancora gestire i pool di
rilascio automatico autoreleasepool {/ * code * /}
Cosa significa? Significa che se la mia base di codice non ha file Objective-C, autoreleasepool {}
non è necessario?
In una risposta a una domanda correlata , c'è un esempio in cui autoreleasepool
può essere utile:
- (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);
}
}
}
}
Se il codice sopra viene tradotto in Swift con autoreleasepool
drop, Swift sarà abbastanza intelligente da sapere che la number
variabile dovrebbe essere rilasciata dopo la prima }
(come fanno alcune altre lingue)?
autoreleasepool
Swift. Ho ampliato la tua domanda e l'ho posta nei forum degli sviluppatori .