kann ich das löschen / entfernen einer Instanz der Klasse programmgesteuert in Swift

Habe ich Tausende Zeilen von verketteten Animationen-code. Ich zog Sie alle zu einem GraphicsHelper Klasse mit Referenzen zurück, um die Daten in meiner ViewController. Einmal bin ich durch mit dem code möchte ich über Bord werfen die Instanz der Klasse auf der Theorie, dass ich im Gedächtnis (und meine view-controller-code) klein. Der view-controller bleibt in Umfang während der gesamten app, die läuft durch mehrere "Phasen". Gibt es eine Möglichkeit, programmgesteuert trennen Sie die class-Instanz der Hilfsklasse? Ich habe versucht zu ordnen null, aber ich bekomme eine Fehlermeldung, dass die Klasse nicht entsprechen NilLiteralConverter Protokoll. Keiner Weise zu trennen von der Instanz oder eine alternative zu den meiner Meinung voluminösen code problem? Ich danke Ihnen allen im Voraus. Bin ich der einzige in der Welt, will so etwas tun?

  • Wahrscheinlich nicht, aber Swift verwendet ARC und man kann nicht Geige in der gleichen Orchester. So Sprach Apple (zumindest id haben denken, dass).
  • Haben Sie festgestellt, dass diese Klasse schafft ein Problem in Bezug auf die Speicherauslastung? Tausende Zeilen code gleichsetzen, um ein paar tausend bytes von Instruktionen
  • Sie können nicht-ARC-Zeugs in Swift, wenn Sie es wirklich wollen. Das ist es, was Unmanaged<T> ist für. Natürlich müssen Sie wissen, was Sie tun und sind verantwortlich für die Folgen einer Schraube-ups... Die vorgeschlagene Lösung unten (mit dem Kommentar-Vorschlag zu verwenden ? nicht !) ist die bessere Wahl, außer in extremen Umständen.
InformationsquelleAutor Sid Wyckoff | 2015-01-05
Schreibe einen Kommentar