protected function del_old_cached()
{
$t = time();
$apc_user_info = apc_cache_info('user', true);
if (!empty($apc_user_info['ttl'])) {
$apc_ttl = $apc_user_info['ttl'] / 2;
$check_period = $apc_ttl;
}
if (empty($check_period) || $check_period > 1800) {
$check_period = 1800;
}
$ittl = new \APCIterator('user', '/^' . preg_quote($this->defragmentation_prefix) . '$/', APC_ITER_ATIME, 1);
$cttl = $ittl->current();
$previous_cleaning = $cttl[self::apc_arr_atime];
if (empty($previous_cleaning) || $t - $previous_cleaning > $check_period) {
apc_store($this->defragmentation_prefix, $t, $check_period);
$this->del_old();
}
return true;
}