Ich bin ziemlich neu PHP OOP zu verwenden und versuchen, die folgenden:OOP entfernen Klasseninstanz
$this->array = new array();
$this->array[1] = new myClass($UniqueName);
Innerhalb myClass habe ich eine Schleife eine Nachricht an die Konsole sendet alle 5 Sekunden, um den eindeutigen Namen angezeigt werden. Während die Anwendung läuft, werden neue Instanzen der myClass erstellt (1, 2, 3, 4, etc ..), ältere werden irrelevant und sollten entfernt werden.
Wenn ich ein Array-Objekt lösche, sendet die Schleife aus dieser Klasse weiterhin Nachrichten an die Konsole.
Meine Sorge ist, dass die Klasse nicht wirklich verschwendet Ressourcen verschwendet. Was die Schleife betrifft, könnte ich sie manuell abbrechen, bevor ich die Unset-Funktion ausführte, aber es scheint, als ob sie mein Problem aus der Sicht versteckt.
Hoffentlich macht das Sinn und jemand kann mir helfen zu verstehen, wenn dies möglich ist.
können Sie den relevanten Code von 'myClass' posten? – Matteo
try auf null setzen $ this-> array [1] = null – Matteo
Wenn Sie alle Verweise auf das Objekt entfernen, bereinigt der Garbage Collector automatisch für Sie. Das heißt, es ist wirklich schwer zu sagen, was Sie ohne den Code tun. – PeeHaa