Thread speicher freigeben
(5 answers)
Opened by Gast at 2004-03-01 23:56
wie esskar schon sagte: ohne code ist es schwierig...
ein paar allgemeine hinweise: x) perl5.6 hat einige ziemliche speicherleaks, die dabei vielleicht eine Rolle spielen; vielleicht mal mit 5.8.2 testen? x) wenn jedes objekt seine eigene datenbankverbindung aufmacht, dann koennte das auch ganz schoen RAM kosten (habe da mit Win32::ODBC mal mein blaues Wunder erlebt, weiss aber nicht, ob es auch bei dem Modul, das du fuer die Datenbankverbindung verwendest, dieses Problem gibt) x) verwende - wenn moeglich - besser my-variablen innerhalb der schleife, dies ist - wenn moeglich - sparsamer als wenn du sie ausserhalb deklarierst und intern immer mit undef zuruecksetzt. gerade bei groesseren Datenstrukturen ist es oft effektiver, wenn man die Variablen einfach durch verlassen des Gueltigkeitsbereiches aufraeumen lasst als sie explizit mit undef zu killen. x) wird nach dem destroy mancher objekte nicht vernuenftig aufgeraeumt (z.B. zirkulaere Referenzen? wenn ja, dann muesstest du die im destructor manuell aufbrechen, sodass der Speicher freigegeben werden kann) perl -le "s::*erlco'unaty.'.dk':e,y;*kn:ai;penmic;;print"
http://www.fabiani.net/ |