Sotto ARC, non è più possibile chiamare autorelease. In sostanza, l'intera nozione di pool di rilascio automatico è fuori dalla finestra. Perché allora abbiamo bisogno della direttiva @autoreleasepool?Perché @autoreleasepool?
5
A
risposta
14
In realtà la nozione di conservazione/rilascio/autorelease è ancora presente quando si utilizza ARC. La differenza è che il compilatore li aggiunge per te. Ciò significa che il concetto di un pool di autorelease è ancora rilevante e potresti volerli utilizzare esattamente nelle stesse situazioni di prima.
Problemi correlati
- 1. semantica @autoreleasepool
- 2. condizionale linking per @autoreleasepool
- 3. @autoreleasepool senza ARC?
- 4. Che cos'è autoreleasepool?
- 5. NSThread crea automaticamente autoreleasepool ora?
- 6. Qual è l'equivalente di @autoreleasepool in Swift?
- 7. Qual è la differenza tra NSAutoreleasePool e il blocco @autoreleasepool?
- 8. Pool di autorelease in Objective-C - rilasciare AutoreleasePool principale?
- 9. Quale versione iOS è richiesta per utilizzare @autoreleasepool?
- 10. Qual è il modo giusto per impostare un outparam NSError all'interno di un blocco autoreleasepool?
- 11. AutoreleasePool non rileva i punti di interruzione, nessun avviso, nessuna segnalazione negli strumenti Perdite
- 12. Sotto ARC, è comunque consigliabile creare un @autoreleasepool per i loop?
- 13. Perché è necessario utilizzare NSAutoreleasepool per ogni thread?
- 14. Perché si autorelease ARC quando si utilizzano riferimenti deboli?
- 15. Perché ArgumentNullException? Perché non System.NullReferenceException?
- 16. In TDD, perché OpenEJB e perché Arquillian?
- 17. pid_t (e tipi simili) - perché, solo perché?
- 18. Perché ItemSkippedException?
- 19. Perché re.match()?
- 20. QAbstractItemModel.parent(), perché?
- 21. Perché funziona?
- 22. Git Svn woes, perché oh, perché non posso mai dcommit?
- 23. Perché `-1 * x` più veloce di` -x` e perché?
- 24. perché jvm ha molti clasloader? perché non uno?
- 25. Environment.GetCommandLineArgs - perché è un metodo? Perché non una proprietà?
- 26. Perché il metodo Throwable.fillInStackTrace() è pubblico? Perché qualcuno dovrebbe usarlo?
- 27. Perché esistono i byte? Perché non usiamo solo bit?
- 28. Perché trasmettere a un'interfaccia?
- 29. Perché usare # 'con lambda?
- 30. cell.detailTextLabel.text non funziona ... perché