Beispiel #1
0
 /**
  * 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();
 }
Beispiel #2
0
 /**
  * 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());
 }