Re: free allocated memory: HOW ?

From: Date: Thu, 12 Apr 2007 13:20:12 +0000
Subject: Re: free allocated memory: HOW ?
References: 1 2  Groups: php.general 
Request: Send a blank email to php-general+get-252723@lists.php.net to get a copy of this message
I am using PHP version 5.1.2. on my dev machine. The same problem with PHP 5.2.1 on webserver. I am generating mails based on a HTML Template. After reading the template with fread() memory_get_usage() says ~386 MB in use... Then the placeholders in the read template are replaced by customized values within a loop. The size of the used memory grows permanently in each loop by approx 30 MB (100 newsletters are generated per loop). any ideas what i am doing wrong and where i [ab]use php? ^^ Jochem Maas schrieb:
Arthur Erdös wrote:
Hello all, is there a way to free memory allocated by variables in PHP?? This is a very important issue concerning long running scripts...
this is a recurrent problem - not much can be done about it AFAIK ... I'd be very glad to be proved wrong.
I have a script that generates > 5000 Newsletters and when the script finishes it uses 1.8 GB (!!) of RAM. Although I am using unset() to clean up variables (tried with $var = null too).
okay this does suggest your doing something else very wrong - I personally have code that regularly generates upto 20,000 individualised newsletters without going anywhere near this ammount of memory - granted I've hit my memory limit a couple of times and had to jack it up to 128Megs (in practice the script grab just over 64Megs when it's doing it's worst). what version of php are you [ab]using?
I've read sth about php not giving the allocated memory back to the OS until a script finishes, is that right?? Is it possible to free the memory "by hand"? Any suggestion is appreciated! thx in advance


« previous php.general (#252723) next »