Mailinglisten-Archive |
Hallo Liste, kann mir vielleicht sagen, wann PHP belegten Speicher wieder frei gibt? Ich habe ein Script, welches verschiedene Grafiken öffnet, neu skaliert und dann als neues JPG abspeichert. Ein anderes Script erstellt ein ZIP-Archiv. Bei beiden Scripten ist es vorgekommen, dass nach mehrmaligem Aufrufen der Fehler: Fatal error: Alowed memory... usw. erschienen ist. Beim Grafik-Script habe ich den Fehler abstellen können, indem ich die erzeugten Grafiken aus dem Speicher gelöscht habe (imagedestroy). Eine entsprechende Funktion für das ZIP-Script habe ich jetzt noch nicht gefunden. Ich nutze hier die pclzip-Klasse. Ich habe nun das memory_limit von 8M auf 64M hochgesetzt. Nun kommt der Fehler nicht mehr. Zumindest nicht, wenn ich alleine teste. Normalerweise sollte es doch so sein, dass nach Scriptende der Prozess den verbrauchten Speicher wieder freigibt, oder? Oder muss ich manuell eine Garbage Collection durchführen? Habe in der Doku noch nichts gefunden. Nur etwas für ldap und MySQL, sowie die entsprechende Funktion aus der GD. Viele Grüße, Lars Brinkmann
php::bar PHP Wiki - Listenarchive