Gibt es eine Möglichkeit, die Retain-Anzahl von Objekten schnell an Xcode's Console abzumelden? Wenn nicht, was ist die nächstbeste Alternative?Swift: Wie man sich ausmeldet Anzahl der Objekte behalten?
Antwort
Normalerweise würden Sie Instrumente verwenden, um die Retain-Anzahl zu erhalten. Aber wie hier beantwortet ist die Methode retainCount
.
'retainCount' ist in Swift nicht gut. Und ansonsten - siehe die Dokumentation unter "Spezielle Überlegungen": "Diese Methode hat keinen Wert beim Debugging von Speicherverwaltungsproblemen. Weil eine beliebige Anzahl von Framework-Objekten ein Objekt behalten hat, um Referenzen darauf zu halten ..." Wie würde tust du es in Instrumenten? – sirab333
Erwarte nicht, dass retainCount die genauen Werte angibt. Siehe die Links, die ich meinem Kommentar angehängt habe (Fragenabschnitt) –
mit CFGetRetainCount
Funktion
Beispiel:
print(CFGetRetainCount(object))
Lesen Sie mehr hier: https://developer.apple.com/reference/corefoundation/1521288-cfgetretaincount
hilfreich hoffen
Beachten Sie auch, dass CFRetainCount in Swift auch Referenzen vom Typ "unbekannt" zählt, die schwache Referenzen enthalten können. Ich lernte dies, indem ich den Laufzeit 'CFGetRetainCount'-Wert mit dem Xcode" View Memory Graph Hierarchy "Tool verweise. Mehr hier: https://koenig-media.raywenderlich.com/uploads/2017/08/visual_memory_debugger.png –
Danke! Müssen Sie Foundation dafür importieren. – Segev
- 1. RestKit behalten CoreData-Objekte
- 2. Behalten Sie bestimmte Objekte von der Skalierung
- 3. Wie man die Anzahl der aktualisierten Objekte in mongodb zurückgibt?
- 4. NetBeans Anzahl der Swing-Objekte
- 5. Django-Abfragefilter nach Anzahl der ManyToMany-Objekte
- 6. Begrenzung der Anzahl der Objekte in NSArrayController
- 7. Distinct Anzahl spezifischer Objekte in der Liste
- 8. Anzahl der serialisierten Objekte in der Datei
- 9. Count Anzahl der Objekte in der Liste
- 10. Wie kann ich die Anzahl der Objekte im Abschnitt erhalten, NSFetchedResultsController Swift
- 11. Wie erhalten Sie die Anzahl der Objekte in einem beobachtbaren Stream, ohne sich selbst zu halten?
- 12. Anzahl der in Java erstellten Objekte ermitteln
- 13. Wie erkennt man, ob sich zwei Golang net.IPNet-Objekte schneiden?
- 14. In der Kartenansicht kann man sich nicht bewegen swift
- 15. Wie man erkennt, wenn sich zwei Objekte in SpriteKit berühren
- 16. Wie zeigt man 2 Dezimalstellen unabhängig von der Anzahl der Stellen nach dem Dezimaltrennzeichen in swift?
- 17. Effiziente, zuverlässige Anzahl aktiver Objekte
- 18. Anzahl der Objekte des Klassentyps innerhalb der Klassenmethode
- 19. Objekte in Swift animieren?
- 20. Swift Swap-Array-Objekte
- 21. Alle Swift-Objekte erweitern
- 22. Schlechte Praxis, um 'sich selbst' zu behalten?
- 23. count Anzahl der Instanzen einer Klasse swift
- 24. Zählen der Anzahl der Objekte, die ein bestimmtes Kriterium erfüllen
- 25. , wie die Anzahl der Objekte in c erstellt zählen ++
- 26. Wie die Anzahl der Objekte in einer ManyToMany Beziehung rückwärts
- 27. Soll ich identische Trainingsbeispiele, die verschiedene Objekte repräsentieren, behalten/entfernen?
- 28. Swift Wie man von einer Phrase ein Wörterbuch mit der Anzahl der Zeichen bekommt
- 29. Fluent Interfaces - die Anzahl der Objekte, die erstellt werden
- 30. Anzahl Tage - iOS/Swift
Warum Sie retainCount brauchen? –
Nur als Lehrmittel. Ich möchte den Schülern zeigen, wie stark sich die Zyklen halten, und einfach über die gesamte ARC-Sache sprechen. – sirab333
Lesen Sie diese, bevor Sie die RetainCount-Methode verwenden. [10 (http://winntousretaincount.com), [2] (http://stackoverflow.com/questions/4636146/when-to-use-retaincount), [3] (http: //www.friday. com/bbum/2011/12/18/retaincount-is-useless /), [4] (http://stackoverflow.com/questions/5784084/calling-rentaincount-consolided-harmful), [5 Apples Erklärung zur Methode retainCount ] (https://developer.apple.com/library/mac/documentation/Cocoa/Reference/Foundation/Protocols/NSObject_Protocol/#//apple_ref/occ/intfm/NSObject/retainCount) –