00001 <?php
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00018 final class eAcceleratorSegmentHandler extends OptimizerSegmentHandler
00019 {
00020 public function __construct($segmentId)
00021 {
00022 parent::__construct($segmentId);
00023
00024 $this->locker = Singleton::getInstance('eAcceleratorLocker');
00025 }
00026
00027 public function drop()
00028 {
00029 return eaccelerator_rm($this->id);
00030 }
00031
00032 protected function getMap()
00033 {
00034 $this->locker->get($this->id);
00035
00036 if (!$map = eaccelerator_get($this->id)) {
00037 $map = array();
00038 }
00039
00040 return $map;
00041 }
00042
00043 protected function storeMap(array $map)
00044 {
00045 $result = eaccelerator_put($this->id, $map, Cache::EXPIRES_FOREVER);
00046
00047 $this->locker->free($this->id);
00048
00049 return $result;
00050 }
00051 }
00052 ?>