À la page 17 de cette présentation de la WWDC14 , il est dit
Travailler avec Objective-C? Vous devez encore gérer les pools de
libération automatique autoreleasepool {/ * code * /}
Qu'est-ce que ça veut dire? Cela signifie-t-il que si ma base de code ne contient aucun fichier Objective-C, autoreleasepool {}
est-ce inutile?
Dans une réponse à une question connexe , il y a un exemple où cela autoreleasepool
peut être 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);
}
}
}
}
Si le code ci-dessus est traduit en Swift avec autoreleasepool
drop, Swift sera-t-il assez intelligent pour savoir que la number
variable doit être publiée après la première }
(comme le font d'autres langues)?
autoreleasepool
Swift. J'ai développé votre question et l' ai posée dans les forums de développement .