Aus dem Kurs: Swift Grundkurs
Erhalten Sie Zugriff auf diesen Kurs – mit einer kostenlosen Probeversion
Werden Sie noch heute Mitglied und erhalten Sie Zugriff auf mehr als 24.700 Kurse von Branchenfachleuten.
Solution: Strong Reference Cycle auflösen
Aus dem Kurs: Swift Grundkurs
Solution: Strong Reference Cycle auflösen
(Musik) An dieser Stelle ist einmal das vorgegebene Beispiel mit den beiden Klassen Person und Apartment vorbereitet. Zusätzlich gibt es hier einige Aufrufe, mit denen sich das Auflösen des Strong Reference Cycles testen lässt. Es wird eine Instanz Person und Apartment erzeugt, die gegenseitig den jeweiligen Variablen zugewiesen werden und zu guter Letzt werden die beiden Variablen auf nil gesetzt, was dazu führen sollte, dass die Person- und Apartment-Instanz aus dem Speicher freigegeben werden sollten. Wenn wir dieses Beispiel nun mit dem vorgegebenen Code ausführen, stellen wir jedoch fest, dass es zu keiner Deinitialisierung kommt. Die entsprechenden print-Statements werden nicht auf der Konsole ausgegeben. Grund hierfür ist der Strong Reference Cycle, der zwischen diesen beiden Elementen existiert. Um ihn aufzulösen, nutze ich eine Weak Reference. Damit zählt Apartment den Referenzzähler der zugewiesenen Person-Instanz nicht hoch. Führe ich den Code nun erneut aus, stellen wir…
Inhalt
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
(Gesperrt)
Grundlagen und Strong References2 Min. 21 Sek.
-
(Gesperrt)
Das Problem der Strong Reference Cycles2 Min. 25 Sek.
-
(Gesperrt)
Weak References2 Min. 16 Sek.
-
(Gesperrt)
Unowned Reference2 Min. 19 Sek.
-
(Gesperrt)
Challenge: Strong Reference Cycle auflösen1 Min. 2 Sek.
-
(Gesperrt)
Solution: Strong Reference Cycle auflösen1 Min. 9 Sek.
-
(Gesperrt)
-