diff --git a/src/RedisLock.php b/src/RedisLock.php index 82758d7..c848586 100644 --- a/src/RedisLock.php +++ b/src/RedisLock.php @@ -27,23 +27,17 @@ public function getLock($key, $timeout = NULL) if ($isGet) { return $expireAt; } - while (1) { usleep(10); $time = time(); $oldExpire = $this->redis->get($lockCacheKey); if ($oldExpire >= $time) { - continue; + continue; } $newExpire = $time + $timeout; $expireAt = $this->redis->getset($lockCacheKey, $newExpire); - if ($oldExpire != $expireAt) { - continue; - } - $isGet = $newExpire; - break; + return $expireAt; } - return $isGet; } public function releaseLock($key, $newExpire) @@ -55,4 +49,4 @@ public function releaseLock($key, $newExpire) return true; } -} \ No newline at end of file +}