Think\Db\Query::lazyWrite PHP Method

lazyWrite() protected method

延时更新检查 返回false表示需要延时 否则返回实际写入的数值
protected lazyWrite ( string $type, string $guid, integer $step, integer $lazyTime ) : false | integer
$type string 自增或者自减
$guid string 写入标识
$step integer 写入步进值
$lazyTime integer 延时时间(s)
return false | integer
    protected function lazyWrite($type, $guid, $step, $lazyTime)
    {
        if (!Cache::has($guid . '_time')) {
            // 计时开始
            Cache::set($guid . '_time', $_SERVER['REQUEST_TIME'], 0);
            Cache::$type($guid, $step, 0);
        } elseif ($_SERVER['REQUEST_TIME'] > Cache::get($guid . '_time') + $lazyTime) {
            // 删除缓存
            $value = Cache::$type($guid, $step, 0);
            Cache::rm($guid);
            Cache::rm($guid . '_time');
            return 0 === $value ? false : $value;
        } else {
            // 更新缓存
            Cache::$type($guid, $step, 0);
        }
        return false;
    }