Browse Source

redis分布式锁优化

dengsixing 2 năm trước cách đây
mục cha
commit
7445bb9b1c

+ 4 - 1
4dkankan-utils-redis/src/main/java/com/fdkankan/redis/util/RedisLockUtil.java

@@ -36,8 +36,11 @@ public class RedisLockUtil {
         boolean locked = false;
         int tryCount = 3;
         String threadId = String.valueOf(Thread.currentThread().getId());
-        while (!locked && tryCount > 0) {
+        while (tryCount > 0) {
             locked = redisTemplate.opsForValue().setIfAbsent(lockKey, threadId, expireTime, TimeUnit.SECONDS);
+            if(locked){
+                return locked;
+            }
             tryCount--;
             try {
                 Thread.sleep(300);