Hi,

Zend_Memory behavior hardly depends on objects' sizes.

It doesn't swap objects less than MinSize. So you can reach memory_limit even you set MemoryLimit for memory manager.

From the other side Zend_Memory is not effective with too low MinSize values. Objects management overhead may be greater than managed values.
This overhead may be also increased by debugger.


PS Note. Zend_Memory calculates used memory as sum of values' sises, so it may not match to value returned by memory_get_usage()


With best regards,
   Alexander Veremyev.

Piotr Sadowski wrote:
$backendOptions = array( 'cacheDir' => realpath('..\\tmp\\cache\\memory') // Directory where to put the swapped memory blocks ); $memoryManager = Zend_Memory::factory('File', $backendOptions);
$memoryManager->setMemoryLimit(16384);
$memoryManager->setMinSize(4096);
$memObject = $memoryManager->create();

for($i = 0; $i < $aLot; $i++) {
        .......
        $memObject->value[$i] = serialize($sampleArray);
        unset($sampleArray);
}

My memory_limit = 32M in php.ini file

I've Got this error

Fatal error: Allowed memory size of 33554432 bytes exhausted (tried to
allocate 1259 bytes) in ...


Regards,
Piotr Sadowski


-----Original Message-----
From: Bartosz Maciaszek [mailto:[EMAIL PROTECTED] Sent: Sunday, May 06, 2007 4:29 PM
To: Piotr Sadowski; fw-general@lists.zend.com
Subject: Re: [fw-general] Zend_Memory Problems

Hi there

It's quite hard to guess what's wrong without some piece of your code.
Please send some.

Regards

2007/5/6, Piotr Sadowski <[EMAIL PROTECTED]>:
Hello!

Does anybody Has been using Zend_Memory Component.
It seems it doesn't work on my machine (Windows).
I didn't check what would be happen on UNIX machine.

But my problem is that - I use File Backend and any file in cacheDir Has
not been created !!
So any data cannot be swapped form memory to File and vice versa.

Please help me, I would be very gratefull

Regards,
Piotr Sadowski






Reply via email to