| | | | |
| |||||||
| PHP-Fortgeschrittene Arbeiten mit PHP ohne Einschränkungen |
|
| | LinkBack | Themen-Optionen | Thema bewerten |
| | |
| PHP Code Flüsterer Registriert seit: 21.08.2005 Beiträge: 4682 PHP-Kenntnisse: Fortgeschritten | |
| | |
| Moderator Registriert seit: 11.05.2008
Beiträge: 6.268
![]() ![]() ![]() ![]() ![]() ![]() ![]() | Wenn der Speicher voll ist, dann ist das Konzept unsauber. Destruktoren benutz ich nicht, weil PHP das Freigeben des Speichers eleganter und wahrscheinlich auch effizienter kann. Evtl. kannst du das Fliegengewichtpattern benutzen um die Zahl deiner Objekte gering zu halten? Oder, bei solchen gewaltigen Mengen (2GB RAM) evtl. überlegen, ganz auf Objekte zu verzichten.
__________________ "Nuschel ich?" - "Was?" |
| | |
| | |
| Erfahrener Benutzer | Eine Script-Instanz hat bei dir die möglichkeit 2000 MB Arbeitsspeicher zu benutzen ? Maschinen-Overkill nenn ich sowas.. Ich fürchte bei deinem Problem hilft nur ein sauberer Rebuild des Scriptes und wenn du wirklich 2GB Speicher zur Verfügung stellst, wie Chriz schon sagte, der Verzicht auf Objekte.
__________________ |
| | |
| | |
| Erfahrener Benutzer Registriert seit: 28.07.2010
Beiträge: 2.308
PHP-Kenntnisse: Fortgeschritten ![]() ![]() ![]() ![]() ![]() | Wo du von rekursiven Objektstrukturen sprichst: Kann es sein dass das Skript auf PHP 5.2 läuft? Dann hilft dir vielleicht schon ein Upgrade, siehe hier |
| | |
| | |
| moderatives Dielektrikum Registriert seit: 21.05.2008
Beiträge: 35.987
PHP-Kenntnisse: Fortgeschritten ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() | Wiedermal das übliche Mißverständnis würde ich sagen. Destruktoren zerstören nicht das Objekt. Genausowenig wie Konstruktoren eines erzeugen.
__________________ -- One pixel is still too big. Please make it smaller. ASAP. Initiative Mittelstand. Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers. -- |
| | |
| | |
| Erfahrener Benutzer Registriert seit: 14.06.2009
Beiträge: 1.731
PHP-Kenntnisse: Fortgeschritten ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() | Bei Sprachen ohne Garbage Collector dienen die Destruktoren dazu, alle „Ressourcen“ eines Objekts (grob: Instanzvariablen, die Objekte halten) freizugeben. Etwa in Delphi 6/7 (anderen Background habe ich da nicht ) ist es normale Vorgehensweise, Objektbäume durch geschachtelte Destruktoraufrufe „abzuräumen“. In Sprachen der C-Familie sicherlich auch.Hier ist der Ansatz des Frage(n)stellers wohl, diese Technik auch in PHP anzuwenden. Das mag ein Verständnisfehler sein oder auch der Versuch, den Speicher zu leeren, weil der Garbage Collector/der PHP-Interpreter es – wieso auch immer – nicht hinkriegt. |
| | |
| | |
| Neuer Benutzer Registriert seit: 05.07.2011
Beiträge: 6
PHP-Kenntnisse: Fortgeschritten ![]() | hi, wow das ging ja mal schnell. Werde mich gleich mal mit den tips auseinander setzten. Ja, es läuft PPH 5.2. Hm,. ok, dann habe ich das mit dem Destruktoren und Konstruktoren wirklich falsch verstanden. Mist. Würde das Script gerne neu machen aber die Zeit bis es laufen muss ist zu knapp. Ist aber geplant, denn wie schon einige sagen, es ist einfach unsauber. Ich melde mich wieder, wenn ich ein Ergebnis habe.... Schon mal Danke für die erste hilfe. |
| | |
| | ||
| Erfahrener Benutzer Registriert seit: 02.09.2009
Beiträge: 1.019
PHP-Kenntnisse: Fortgeschritten ![]() | Zitat:
Ein unset kann Sinn machen, wenn man den Speicher braucht bevor der Request fertig abgearbeitet ist. Aber wenn der Speicher nach dem Ende des Requests nicht freigegeben wird, dann liegt das Problem woanders.
__________________ Wir suchen PHP Entwickler (Vollzeit) im Raum Darmstadt / Rhein-Main. Infos via E-Mail mueller@new-frontiers.de | |
| | |
| | |
| Erfahrener Benutzer Registriert seit: 01.09.2010
Beiträge: 4.561
PHP-Kenntnisse: Fortgeschritten ![]() ![]() ![]() | die Frage wäre eher - DARF dein PHP überhaupt die 2gbyte nutzen ?.. ME steht doch laut phpinfo() meist nur 256 mb - oder sogar nur 128 mb für PHP"Daten" zur Verfügung .... vielleicht hilft dir ja in deinem Fall neben dem Upgrade auf 5.3 auch eine Änderung dieser php.ini- Einstellung Code: memory_limit 128M 128M
__________________ "Irren ist männlich", sprach der Igel und stieg von der Drahtbürste |
| | |
|
| Themen-Optionen | |
| Thema bewerten | |
|
|
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| Array aus SQL Abfrage zusammenbauen um es rekursiv abzuarbeiten | litterauspirna | PHP Einsteiger | 7 | 01.02.2011 18:44 |
| Objekte mit Attributen variabler Anzahl und variablen Typs speichern | Bergtroll | Datenbanken | 9 | 29.01.2011 14:54 |
| [Erledigt] Zerstörung der Objekte am Ende eines Scripts | ByStones | PHP Tipps 2010 | 8 | 03.05.2010 14:01 |
| [Erledigt] Browsergame : Objekte auf einer Karte | BlackScorp | Software-Design | 10 | 01.04.2010 09:59 |
| Verschachtelte Objekte und Vererbung | GELight | PHP-Fortgeschrittene | 1 | 11.12.2009 09:09 |
| Was bringt OOP wenn Objekte nach jeder Seite sterben? | majorbenks | PHP Tipps 2009 | 9 | 18.11.2009 14:11 |
| [Erledigt] Referenzen auf Objekte innerhalb eines Arrays | PHP-Fortgeschrittene | 6 | 31.08.2009 17:06 | |
| [Erledigt] Wo liegen bei OOP die Objekte? | Jafix | PHP Tipps 2009 | 2 | 12.06.2009 18:14 |
| [Erledigt] Objekte übergeben | Felix | PHP Tipps 2008 | 23 | 18.06.2008 12:21 |
| Objekte zerstören | galaxyshadow | PHP Tipps 2008 | 4 | 12.05.2008 10:29 |
| Objekte zur Laufzeit Vererbung anhängen | Zergling-new | PHP-Fortgeschrittene | 8 | 17.11.2007 17:31 |
| [Erledigt] Objekte vergleichen | PHP-Fortgeschrittene | 4 | 08.12.2005 16:20 | |
| Ganze Objekte an Script weitergeben | dreamingof8a | PHP Tipps 2004-2 | 6 | 23.11.2004 12:17 |
| [Erledigt] Referenzen auf Objekte | PHP-Fortgeschrittene | 2 | 17.08.2004 11:08 | |
| Anonyme Objekte? | PHP-Fortgeschrittene | 18 | 25.07.2004 22:19 | |
| Besucher kamen über folgende Suchanfragen bei Google auf diese Seite |
| php objekt zerstören, speicher freigeben in c bei rekursion, php mit new erzeugte objekte zerstören?, php 5.3 garbage collector rekursion, php nach scriptende wird speicher nicht freigegeben, cpp rekrusive klasse speicher freigeben, objekt zerstören php, objekte rekursion, rekursion bei objekte, php rekursive opjekt, php speicher freigeben klasse, php garbage collector 2011, delphi baum freigeben, wo speichert msn freigegeben objekte ? |