/** * Swap object data to disk * Actualy swaps data or only unloads it from memory, * if object is not changed since last swap * * @param Zend_Memory_Container_Movable $container * @param integer $id */ private function _swap(Zend_Memory_Container_Movable $container, $id) { if ($container->isLocked()) { return; } if (!$container->isSwapped()) { $this->_backend->save($container->getRef(), $this->_managerId . $id, $this->_tags); } $this->_memorySize -= $this->_sizes[$id]; $container->markAsSwapped(); $container->unloadValue(); }
/** * tests lock()/unlock()/isLocked() functions */ public function testLock() { $memoryManager = new Zend_Memory_Manager_Dummy(); $memObject = new Zend_Memory_Container_Movable($memoryManager, 10, '0123456789'); $this->assertFalse((bool) $memObject->isLocked()); $memObject->lock(); $this->assertTrue((bool) $memObject->isLocked()); $memObject->unlock(); $this->assertFalse((bool) $memObject->isLocked()); }