Jamm\Memory\Shm\SingleMemory::del_old PHP Method

del_old() public method

Delete old (by ttl) variables from storage
public del_old ( ) : boolean
return boolean
    public function del_old()
    {
        $auto_unlocker = NULL;
        if (!$this->sem->get_access_write($auto_unlocker)) {
            return false;
        }
        $this->readmemory();
        if (empty($this->mem) || empty($this->mem[self::map_key_ttl])) {
            return false;
        }
        $t = time();
        if (empty($this->mem[self::map_key_cleantime]) || $t - $this->mem[self::map_key_cleantime] > 1800) {
            foreach ($this->mem[self::map_key_ttl] as $key => $ttl) {
                if ($ttl < $t) {
                    unset($this->mem[self::map_keys][$key]);
                }
            }
            $this->mem[self::map_key_cleantime] = $t;
            $this->refresh();
        }
        return true;
    }