- Модуль: main
- Путь к файлу: ~/bitrix/modules/main/lib/data/cacheenginexcache.php
- Класс: BitrixMainDataCacheEngineXCache
- Вызов: CacheEngineXCache::unlock
protected function unlock($baseDir, $initDir = false, $key = false, $TTL = 0)
{
if ($key !== false)
{
if ($TTL > 0)
{
xcache_set($key, 1, intval($TTL));
}
else
{
xcache_unset($key);
}
unset(self::$locks[$baseDir][$initDir][$key]);
}
elseif ($initDir !== false)
{
if (isset(self::$locks[$baseDir][$initDir]))
{
foreach (self::$locks[$baseDir][$initDir] as $subKey)
{
$this->unlock($baseDir, $initDir, $subKey, $TTL);
}
unset(self::$locks[$baseDir][$initDir]);
}
}
elseif ($baseDir !== false)
{
if (isset(self::$locks[$baseDir]))
{
foreach (self::$locks[$baseDir] as $subInitDir)
{
$this->unlock($baseDir, $subInitDir, false, $TTL);
}
}
}
}