In Swift bemerke ich, dass es kein @autoreleasepool{}
Konstrukt gibt, obwohl Swift ARC verwendet. Was ist der richtige Weg, um einen Autoreleasepool in Swift zu verwalten, oder wurde er aus irgendeinem Grund entfernt?Was entspricht @autoreleasepool in Swift?
Antwort
Diese im Detail in WWDC 2014 session video Zahl erklärt 418 "Verbesserung Ihrer App mit Instrumenten", die Sie auch als PDF herunterladen.
Aber kurz gesagt, die Syntax ist:
autoreleasepool {
/* code */
}
Es ist wichtig zu beachten, dass die '{** ** muss ** in der gleichen Zeile sein wie der 'autoresposepool', sonst müssen Sie es in'() 'einbinden. Das * ärgert mich wirklich, um ehrlich zu sein ... – Erik
@SiLo wirklich? Das ist Scheiße. Sie sollten einen Fehlerbericht einreichen. –
@AbhiBeckert @SiLo Es ist kein Fehler. 'Autorelease' ist eine Funktion, die eine Schlussfolgerung als Argument akzeptiert. Dies ist ein Beispiel für die Short-Hand-Closure-as-Last-Argument-Syntax. –
Es gibt! Es wird nirgendwo wirklich erwähnt.
autoreleasepool {
Do things....
}
Gerade FYI, Xcode den vollständigen Code wie folgt aufgebaut:
autoreleasepool({() ->() in
// code
})
Erraten Sie die Klammern, um die Funktionen Schließung identifiziert.
Ich bin mir nicht sicher, warum jemand diesen Kommentar abgelehnt hat, da er darauf hinweist, dass ein Autorelease-Pool, soweit Swift1.2 benötigt wird, den Code benötigt, der in eine Schließung eingeschlossen wird – bolnad
- 1. @autoreleasepool in Schleife oder Schleife in @autoreleasepool?
- 2. Was entspricht in swift "dispatch_block_t"?
- 3. Was entspricht einem Swift-Vervollständigungsblock in Python?
- 4. Was entspricht "#pragma mark -" in swift?
- 5. BigInteger entspricht in Swift?
- 6. iPhone Autoreleasepool und Allokationen
- 7. cURL entspricht in Swift - iOS
- 8. Swift: Typ nicht entspricht Protokoll
- 9. Was entspricht Program.cs in VB.NET
- 10. Was entspricht Serial.available() in Pyserial?
- 11. Was entspricht System.nanoTime() in .NET?
- 12. Was entspricht ReDimStatement in C#?
- 13. Was entspricht %% ~ nxD in Bash?
- 14. Was entspricht REGEXP_SUBSTR in mysql?
- 15. Was entspricht JPA in .NET?
- 16. Was entspricht Ajax.updater in Jquery?
- 17. Was entspricht @ Html.Raw in Postal?
- 18. Was entspricht ActionSheetIOS in Android?
- 19. Was entspricht document.createTextNode ('') in jQuery
- 20. Was entspricht Form.IsValid() in WinForms?
- 21. Was entspricht in Visual Basic | =?
- 22. Was entspricht Thread.SetApartmentState in C++?
- 23. Was entspricht CURL in SCRAPY
- 24. UINT_MAX + 1 entspricht was?
- 25. moxy: was entspricht RuntimeTypeInfoSet
- 26. Was entspricht BindingFlags.Default?
- 27. Swift 2.2: Typ '()' entspricht nicht Protokoll 'BooleanType'
- 28. Objective C Extension entspricht Swift Extensions?
- 29. Swift entspricht mehreren Werten für eine Eigenschaft
- 30. Was entspricht $ in (in mongodb) für Elasticsearch?
vielleicht ist es nur noch nicht für uns freigegeben (und implementiert eine benutzerdefinierte mit ObjC Brücke ist einfach) –
Auch verwandt und interessiert: "Ist es notwendig, Autorespeicherung in einem Swift-Programm zu verwenden?" http://stackoverflow.com/questions/25860942/is-it-necessary-to-use-autoreasepool-in-a-swift-program?rq=1 –