Re: Re: Memory investigation

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



global $fooSize = 0;

function foo($id) {
....
global $fooSize;
if (empty($foos($id)) {
  $b = get_memory_usage(true);
  $foos[$id] = load_foo($id);
  $fooSize+= $b - get_memory_usage(true);
}
...
}
On Wed, Mar 3, 2010 at 8:16 PM, larry@xxxxxxxxxxxxxxxx
<larry@xxxxxxxxxxxxxxxx> wrote:
> That's not really what I'm after.  Let me try an example:
>
> function foo($id) {
>  static $foos = array();
>
>  if (empty($foos[$id]) {
>    $foos[$id] = load_foo($id);
>  }
>  return $foos[$id];
> }
>
> When load_foo() is slow (e.g., lots of DB traffic or remote-server calls or
> whatever), such caching can have a significant performance boost. Sometime
> after foo() has been called 15 times from 30 places in code, when I get to
> the end of the request (or just every time I call foo() would be fine) I
> want to be able to do something like:
>
> $cost = get_memory_used_by($foos);
>
> So that I can determine how much memory that caching is costing me over the
> lifetime of the page, and determine if it's a worthwhile trade-off.
>
> --Larry Garfield
>
> dsiembab01@xxxxxxxxx wrote:
>>
>> function check_memory_usage(&$memory)
>> {
>>    $memory[] = memory_get_usage();
>>    return $memory;
>> }
>>
>> something like this?
>> you can put it wherever you like and returns an array for further
>> processing. You could optionally add a second argument to set the index to a
>> name and check if the name exists to add 1 to the end of the name so your
>> indexes stay maintained.
>>
>
> --
> PHP General Mailing List (http://www.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php
>
>

-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php



[Index of Archives]     [PHP Home]     [Apache Users]     [PHP on Windows]     [Kernel Newbies]     [PHP Install]     [PHP Classes]     [Pear]     [Postgresql]     [Postgresql PHP]     [PHP on Windows]     [PHP Database Programming]     [PHP SOAP]

  Powered by Linux