Mailinglisten-Archive |
On Tue, Jan 29, 2002 at 11:06:14AM +0100, Alexander Merz wrote: > > Die gibt es meines Wissens erst mit der ZendEngine2, die > > in PHP5 eine Rolle spielen wird. Ansonsten werden instanziierte > > Objekte automatisch am Ende des Scripts gelöscht, alternativ > > Nachtrag: Mir ist eigentlich vollkommen unklar, warum in aller Welt jeder eine > Destruktor-Funktion in Klassen haben will. z.B., weil mit der "Vernichtung" des Objektes noch andere Aufraeumaktionen einhergehen sollen. Denkbar waere z.B., Unterobjekte ebenfalls zu loeschen oder gar noch irgendwelche in Verbindung mit dem Objekt gelockten Datensaetze in einer Datenbank wieder freizugeben. > In jeder Sprache mit integrierter GC ist es nicht vorraussehbar, wann > das Objekt aus dem Speicher geräumt wird und somit der Destruktor > aufgerufen wird. Seit wann hat PHP eine Garbage Collection? Bei der ueblichen Laufzeit eines PHP-Scripts mitunter auch nich unbedingt noetig. > Wer innerhalb eines Objektes Resourcen zu einen bestimmten Zeitpunkt > (=wenn ich es nicht mehr brauche) freigeben will o.ä., muss deshalb > sowieso eine eigene Funktion schreiben und diese manuell aufrufen. Das ist die klassische Aufgabe eines Destruktors. Ressourcen, die waehrend der kompletten Lebenszeit des Objektes gebunden sein muessen, wieder freizugeben. Gruss, Markus -- Free the Fluffy Bunny.
php::bar PHP Wiki - Listenarchive