redis分布式鎖-自動超時鎖(在用)


1、加鎖代碼結構

2、解鎖代碼結構

3、java實例

4、測試類

5、測試日志

 

加鎖代碼結構

def acquire_lock_with_timeout(conn,lockname,acquire_timeout,lock_timeout)
    identifer=uuid.uuid4
    lockname='lock:'+lockname
    repeat_end_time=current_time()+acquire_timeout
    
    while current_time<repeat_end_time
        if conn.setnx(lockname,identifer)
            conn.expire(lockname,lock_timeout)
            return identifer
        elif not conn.ttl(lockname)
            conn.expire(lockname,lock_timeout)
        time.sleep(0.001)
    return false

 

解鎖代碼結構

def release_loc(conn,lockname,identifer)
    pipe=conn.pipeline(true)
    lockname='lock:'+lockname
    while True
        try:
            pipe.watch(lockname)
            if pipe.get(lockname) == identifer   // 檢查進程是否仍然是有鎖,若未持有鎖,則返回false
                pipe.multi()
                pipe.delete(lockname)
                pipe.execute
                return true
            pipe.unwatch()
            break
        except redis.exceptions.WatchError
            pass    // 有其他客戶端修改了鎖,重試
    return False

 java實例

import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
import redis.clients.jedis.Transaction;
import redis.clients.jedis.exceptions.JedisException;
import java.util.List;
import java.util.UUID;

public class Distributed_Lock {

    public static String lock_withTimeout(String lockName, long acquire_timeout, long timeout) {
        Jedis redis = null;
        String key_identifier = null;
        try {
            String identifier = Thread.currentThread().getName() + ":" + UUID.randomUUID().toString(); // Thread
                                                                                                        // just
                                                                                                        // for
                                                                                                        // debug
            String lockKey = "lock:" + lockName;
            int lockExpire = (int) (timeout / 1000);
            long end = System.currentTimeMillis() + acquire_timeout;
            while (System.currentTimeMillis() < end) {
                redis = JedisUtil.getJedis();
                if (redis == null) {
                    System.out.println(Thread.currentThread().getName()
                            + "  warning!!! lock_withTimeout can not get redis conn ,program repeat for get the conn");
                    Thread.sleep(100);
                    continue;
                }
                if (redis.setnx(lockKey, identifier) == 1) {// execute
                                                            // successfully will
                                                            // return "1"
                    redis.expire(lockKey, lockExpire);
                    key_identifier = identifier;
                    System.out.println(Thread.currentThread().getName() + "  獲取鎖:"+key_identifier);
                    return key_identifier;
                }
                if (redis.ttl(lockKey) == -1) {
                    redis.expire(lockKey, lockExpire);
                }
                long lockKey_ttl = redis.ttl(lockKey);
                try {
                    System.out.println(Thread.currentThread().getName()
                            + "  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:" + lockKey_ttl);

                    Thread.sleep(100);
                } catch (InterruptedException e) {
                    Thread.currentThread().interrupt();
                }
                if (redis != null) {
                    redis.close();
                }
            }
            System.out.println(Thread.currentThread().getName() + "  獲取redis連接失敗,放棄獲取鎖");
        } catch (Exception e) {
            System.out.println(Thread.currentThread().getName() + "  獲取鎖發生異常");
            e.printStackTrace();
        } finally {
            if (redis != null) {
                redis.close();
            }
        }
        return key_identifier;
    }

    public static boolean lock_release(String lockName, String identifier) {
        Jedis redis = null;
        String lockKey = "lock:" + lockName;
        boolean retFlag = false;
        String _temp_identifier_from_redis = "";
        try {
            redis = JedisUtil.getJedis();
            while (true) {
                if (redis == null) {
                    System.out.println(Thread.currentThread().getName()
                            + "  warning!!! lock_release can not get redis function,program repeat for get the conn");
                    try {
                        Thread.sleep(10);
                        redis = JedisUtil.getJedis();
                    } catch (InterruptedException e) {
                        // TODO Auto-generated catch block
                        e.printStackTrace();
                    }
                    continue;
                }
                redis.watch(lockKey);
                _temp_identifier_from_redis = redis.get(lockKey);
                if (_temp_identifier_from_redis == null || "".equals(_temp_identifier_from_redis)) {
                    System.out.println(Thread.currentThread().getName() + "  鎖已過期失效失效");
                } else if (identifier.equals(_temp_identifier_from_redis)) {
                    long del_result = redis.del(lockKey);
                    if (del_result == 1) {
                        System.out.println(Thread.currentThread().getName() + "  完成任務,釋放鎖");
                        retFlag = true;
                    } else {
                        System.out.println(Thread.currentThread().getName() + "  釋放鎖失敗,鎖已提前釋放");
                        //continue;
                    }
                } else {
                    System.out.println(Thread.currentThread().getName() + "  鎖已過期失效,被污染");
                }
                redis.unwatch();
                break;
            }
        } catch (JedisException e) {
            e.printStackTrace();
        } finally {
            if (redis != null) {
                redis.close();
            }
        }
        return retFlag;
    }
}

 

測試類

import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Date;

import redis.clients.jedis.Jedis;

public class TestDistributed_Lock {

    public static void main(String[] args) {
        System.out.println( " main start");
        for (int i = 0; i < 100; i++) {
            Test_Thread_lock threadA = new Test_Thread_lock();
            threadA.start();
            try {
                Thread.sleep(1);
            } catch (InterruptedException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }
    }

}

class Test_Thread_lock extends Thread {

    public void run() {
        System.out.println(Thread.currentThread().getName() + " 啟動運行");
        String indentifier = Distributed_Lock.lock_withTimeout("resource", 500000, 100000);
        if (indentifier == null) {
            System.out.println(Thread.currentThread().getName() + " 獲取鎖失敗,取消任務");
        }else{
            System.out.println(Thread.currentThread().getName() + "  執行任務");
            Distributed_Lock.lock_release("resource", indentifier);
        }
        System.out.println(Thread.currentThread().getName() + " 完成推出");
    }

}

 

測試日志

 main start
Thread-0 啟動運行
Thread-1 啟動運行
Thread-2 啟動運行
Thread-3 啟動運行
Thread-4 啟動運行
Thread-5 啟動運行
Thread-6 啟動運行
Thread-7 啟動運行
Thread-8 啟動運行
Thread-9 啟動運行
Thread-10 啟動運行
Thread-11 啟動運行
Thread-12 啟動運行
Thread-13 啟動運行
Thread-14 啟動運行
Thread-15 啟動運行
Thread-16 啟動運行
Thread-17 啟動運行
Thread-18 啟動運行
Thread-19 啟動運行
Thread-20 啟動運行
Thread-21 啟動運行
Thread-22 啟動運行
Thread-23 啟動運行
Thread-24 啟動運行
Thread-25 啟動運行
Thread-26 啟動運行
Thread-27 啟動運行
Thread-28 啟動運行
Thread-29 啟動運行
Thread-30 啟動運行
Thread-31 啟動運行
Thread-32 啟動運行
Thread-33 啟動運行
Thread-34 啟動運行
Thread-35 啟動運行
Thread-36 啟動運行
Thread-37 啟動運行
Thread-38 啟動運行
Thread-39 啟動運行
Thread-40 啟動運行
Thread-41 啟動運行
Thread-42 啟動運行
Thread-43 啟動運行
Thread-44 啟動運行
Thread-45 啟動運行
Thread-46 啟動運行
Thread-47 啟動運行
Thread-48 啟動運行
Thread-49 啟動運行
Thread-50 啟動運行
Thread-51 啟動運行
Thread-52 啟動運行
Thread-53 啟動運行
Thread-54 啟動運行
Thread-55 啟動運行
Thread-56 啟動運行
Thread-57 啟動運行
Thread-58 啟動運行
Thread-59 啟動運行
Thread-60 啟動運行
Thread-61 啟動運行
Thread-62 啟動運行
Thread-63 啟動運行
Thread-64 啟動運行
Thread-65 啟動運行
Thread-66 啟動運行
Thread-67 啟動運行
Thread-68 啟動運行
Thread-69 啟動運行
Thread-70 啟動運行
Thread-71 啟動運行
Thread-72 啟動運行
Thread-73 啟動運行
Thread-74 啟動運行
Thread-75 啟動運行
Thread-76 啟動運行
Thread-77 啟動運行
Thread-78 啟動運行
Thread-79 啟動運行
Thread-80 啟動運行
Thread-81 啟動運行
Thread-82 啟動運行
Thread-83 啟動運行
Thread-84 啟動運行
Thread-85 啟動運行
Thread-86 啟動運行
Thread-87 啟動運行
Thread-88 啟動運行
Thread-89 啟動運行
Thread-90 啟動運行
Thread-91 啟動運行
Thread-92 啟動運行
Thread-93 啟動運行
Thread-94 啟動運行
Thread-95 啟動運行
Thread-96 啟動運行
Thread-97 啟動運行
Thread-98 啟動運行
Thread-99 啟動運行
Thread-98  獲取鎖:Thread-98:2c75baea-0d98-48bb-8736-3d96be3b9e12
Thread-98  執行任務
Thread-97  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-16  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-15  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-14  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-95  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-99  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-13  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-12  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-11  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-9  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-10  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-8  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-7  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-4  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-6  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-1  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-0  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-5  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-3  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-17  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-18  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-19  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-20  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-21  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-22  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-23  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-24  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-25  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-26  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-27  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-28  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-29  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-30  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-31  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-32  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-33  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-34  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-35  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-36  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-37  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-38  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-39  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-40  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-41  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-42  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-43  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-44  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-45  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-46  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-47  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-48  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-49  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-50  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-51  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-52  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-53  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-54  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-55  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-56  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-57  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-58  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-59  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-60  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-61  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-62  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-63  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-64  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-96  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-65  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-66  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-67  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-68  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-69  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-70  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-71  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-72  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-73  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-74  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-75  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-76  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-78  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-77  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-79  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-80  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-2  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-94  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-93  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-81  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-92  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-83  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-82  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-84  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-85  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-91  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-90  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-86  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-87  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-89  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-88  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-98  完成任務,釋放鎖
Thread-98 完成推出
Thread-16  獲取鎖:Thread-16:4172d60b-795c-42b6-ab79-6bd35ab3d393
Thread-16  執行任務
Thread-95  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-99  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-16  完成任務,釋放鎖
Thread-16 完成推出
Thread-12  獲取鎖:Thread-12:09d449e3-c290-46f3-99d0-5975ed3e2b74
Thread-97  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-12  執行任務
Thread-13  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-9  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-8  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-12  完成任務,釋放鎖
Thread-20  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-21  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-12 完成推出
Thread-24  獲取鎖:Thread-24:4ec8404c-b5e6-4e52-94eb-e960afff5592
Thread-24  執行任務
Thread-5  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-0  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-17  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-52  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-51  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-48  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-44  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-49  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-45  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-1  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-59  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-60  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-4  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-63  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-64  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-96  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-61  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-65  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-70  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-66  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-73  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-75  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-76  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-80  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-58  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-74  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-92  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-83  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-84  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-91  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-77  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-87  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-78  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-88  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-57  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-2  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-93  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-94  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-81  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-82  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-85  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-90  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-86  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-89  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-54  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-53  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-50  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-55  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-56  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-47  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-24  完成任務,釋放鎖
Thread-24 完成推出
Thread-40  獲取鎖:Thread-40:6074038b-6b5d-466e-95f4-26ccd8881e03
Thread-40  執行任務
Thread-40  完成任務,釋放鎖
Thread-40 完成推出
Thread-43  獲取鎖:Thread-43:c84d78c8-21fe-4896-91b0-9902d4b8c1ea
Thread-43  執行任務
Thread-46  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-42  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-41  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-38  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-37  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-34  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-33  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-30  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-29  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-26  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-23  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-22  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-19  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-18  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-11  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-3  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-15  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-14  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-39  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-35  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-10  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-7  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-6  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-36  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-28  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-32  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-31  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-27  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-25  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-43  完成任務,釋放鎖
Thread-43 完成推出
Thread-79  獲取鎖:Thread-79:6fdce7a5-19a1-453a-bc71-7d9925e78cdc
Thread-79  執行任務
Thread-69  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-71  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-72  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-68  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-67  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-62  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-79  完成任務,釋放鎖
Thread-79 完成推出
Thread-99  獲取鎖:Thread-99:9bdf89e4-712b-4ae1-8ef5-58769d8b6027
Thread-99  執行任務
Thread-95  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-99  完成任務,釋放鎖
Thread-99 完成推出
Thread-97  獲取鎖:Thread-97:7ecb43e6-af95-47d1-9598-26d2db43de15
Thread-97  執行任務
Thread-97  完成任務,釋放鎖
Thread-97 完成推出
Thread-13  獲取鎖:Thread-13:2958075d-6e58-452f-b736-ee20663d3017
Thread-13  執行任務
Thread-13  完成任務,釋放鎖
Thread-13 完成推出
Thread-9  獲取鎖:Thread-9:2c1f6177-203e-43b2-81a0-4694c58b1cfb
Thread-9  執行任務
Thread-8  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-9  完成任務,釋放鎖
Thread-9 完成推出
Thread-20  獲取鎖:Thread-20:056395e7-5e7e-444a-b5bb-5040c7edc12d
Thread-20  執行任務
Thread-21  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-20  完成任務,釋放鎖
Thread-20 完成推出
Thread-5  獲取鎖:Thread-5:076d1c88-3d67-4b0a-8822-9866246f3b0a
Thread-5  執行任務
Thread-0  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-5  完成任務,釋放鎖
Thread-51  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-5 完成推出
Thread-48  獲取鎖:Thread-48:c8d0ca49-0b17-43d9-bc21-e5c6819e640e
Thread-48  執行任務
Thread-52  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-44  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-17  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-48  完成任務,釋放鎖
Thread-48 完成推出
Thread-49  獲取鎖:Thread-49:7c9fbc26-d959-4f5c-bfcc-43d716f06f5f
Thread-49  執行任務
Thread-45  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-59  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:-2
Thread-49  完成任務,釋放鎖
Thread-49 完成推出
Thread-1  獲取鎖:Thread-1:7b6b5faa-3465-4252-93a1-041336b91eec
Thread-1  執行任務
Thread-1  完成任務,釋放鎖
Thread-1 完成推出
Thread-60  獲取鎖:Thread-60:f7eedc16-6a7b-4652-bf6f-f1c13942a897
Thread-60  執行任務
Thread-4  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-63  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-60  完成任務,釋放鎖
Thread-60 完成推出
Thread-64  獲取鎖:Thread-64:a989aaaf-405d-43fa-b423-46a53dc22f32
Thread-64  執行任務
Thread-96  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-64  完成任務,釋放鎖
Thread-64 完成推出
Thread-65  獲取鎖:Thread-65:5c3891aa-51ee-44d4-bf00-cb5d6cc95b25
Thread-65  執行任務
Thread-61  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-65  完成任務,釋放鎖
Thread-65 完成推出
Thread-70  獲取鎖:Thread-70:7fdff6ca-c792-4a1a-b50b-7e30237d7118
Thread-70  執行任務
Thread-70  完成任務,釋放鎖
Thread-70 完成推出
Thread-73  獲取鎖:Thread-73:e909c294-3d50-451b-a77a-44066d30d5bc
Thread-73  執行任務
Thread-66  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-73  完成任務,釋放鎖
Thread-73 完成推出
Thread-75  獲取鎖:Thread-75:b18fd2be-ac1f-4585-950d-eee7c1895846
Thread-75  執行任務
Thread-76  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-75  完成任務,釋放鎖
Thread-75 完成推出
Thread-80  獲取鎖:Thread-80:e4ca2fa6-f6f4-4940-8808-47ac057deeab
Thread-80  執行任務
Thread-58  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-80  完成任務,釋放鎖
Thread-80 完成推出
Thread-74  獲取鎖:Thread-74:662cca2f-fdb3-4cb3-b80a-3154c180bf2c
Thread-74  執行任務
Thread-74  完成任務,釋放鎖
Thread-74 完成推出
Thread-84  獲取鎖:Thread-84:ebcba311-2db3-440b-8103-f1727d73711e
Thread-84  執行任務
Thread-83  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-92  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-91  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:-2
Thread-84  完成任務,釋放鎖
Thread-84 完成推出
Thread-77  獲取鎖:Thread-77:cdd853b1-4490-4b73-b205-022531d59c53
Thread-77  執行任務
Thread-87  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-77  完成任務,釋放鎖
Thread-77 完成推出
Thread-78  獲取鎖:Thread-78:c3420af8-bf0b-446a-9a07-ec709f36ebc0
Thread-78  執行任務
Thread-88  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-78  完成任務,釋放鎖
Thread-78 完成推出
Thread-57  獲取鎖:Thread-57:25bb0e44-256a-4025-8970-39eb0bf39d6e
Thread-57  執行任務
Thread-57  完成任務,釋放鎖
Thread-57 完成推出
Thread-2  獲取鎖:Thread-2:a95241d4-13e5-4fb2-a3b9-461fa6c55e2b
Thread-2  執行任務
Thread-93  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-2  完成任務,釋放鎖
Thread-2 完成推出
Thread-81  獲取鎖:Thread-81:1a0de521-c2a2-4485-96c9-f6367e59068f
Thread-81  執行任務
Thread-81  完成任務,釋放鎖
Thread-81 完成推出
Thread-85  獲取鎖:Thread-85:6151b661-d193-48c9-8268-4ad55116d51d
Thread-85  執行任務
Thread-85  完成任務,釋放鎖
Thread-94  獲取鎖:Thread-94:e610b14a-6774-444f-b897-4081bd83b500
Thread-94  執行任務
Thread-85 完成推出
Thread-89  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-90  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-82  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-86  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:-2
Thread-94  完成任務,釋放鎖
Thread-54  獲取鎖:Thread-54:f7d1151a-0aa7-4888-9d4a-31c40e162164
Thread-54  執行任務
Thread-94 完成推出
Thread-54  完成任務,釋放鎖
Thread-54 完成推出
Thread-53  獲取鎖:Thread-53:afceb431-6306-423f-80d5-3f05cdce29e6
Thread-53  執行任務
Thread-53  完成任務,釋放鎖
Thread-50  獲取鎖:Thread-50:8079a307-7a85-4bce-a304-4b669b16eb87
Thread-50  執行任務
Thread-50  完成任務,釋放鎖
Thread-50 完成推出
Thread-53 完成推出
Thread-55  獲取鎖:Thread-55:d2adb3e6-d080-4a58-804d-7cfe6846e920
Thread-55  執行任務
Thread-55  完成任務,釋放鎖
Thread-55 完成推出
Thread-56  獲取鎖:Thread-56:72f2a419-0ce5-40b1-bb54-87909783abc8
Thread-56  執行任務
Thread-56  完成任務,釋放鎖
Thread-56 完成推出
Thread-47  獲取鎖:Thread-47:b22b2bac-8857-4811-ac68-c0280d28796e
Thread-47  執行任務
Thread-47  完成任務,釋放鎖
Thread-47 完成推出
Thread-42  獲取鎖:Thread-42:a55cc000-0b8a-41dd-ad3e-99710158ea65
Thread-42  執行任務
Thread-46  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-41  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-37  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:-2
Thread-42  完成任務,釋放鎖
Thread-42 完成推出
Thread-34  獲取鎖:Thread-34:00470d00-a9fc-4267-911a-629fdd644f10
Thread-34  執行任務
Thread-33  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-38  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-30  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-34  完成任務,釋放鎖
Thread-34 完成推出
Thread-29  獲取鎖:Thread-29:c9703eb6-5b31-4161-b243-64ad6d32ffda
Thread-29  執行任務
Thread-26  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-29  完成任務,釋放鎖
Thread-29 完成推出
Thread-23  獲取鎖:Thread-23:8acf6150-f1a5-4a1f-9bab-b8b589505a68
Thread-23  執行任務
Thread-23  完成任務,釋放鎖
Thread-23 完成推出
Thread-22  獲取鎖:Thread-22:6a37a009-bd44-4fb9-8252-65b4b0518b32
Thread-22  執行任務
Thread-22  完成任務,釋放鎖
Thread-22 完成推出
Thread-19  獲取鎖:Thread-19:ddcdc9ab-4e65-44ce-a0a8-b6574c628e7f
Thread-19  執行任務
Thread-18  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-19  完成任務,釋放鎖
Thread-19 完成推出
Thread-3  獲取鎖:Thread-3:6f0fd9a7-0027-4813-9eb9-459363c9feab
Thread-3  執行任務
Thread-11  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-3  完成任務,釋放鎖
Thread-3 完成推出
Thread-15  獲取鎖:Thread-15:c5778953-b19a-4079-a431-5cd681111a40
Thread-15  執行任務
Thread-39  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-14  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-15  完成任務,釋放鎖
Thread-10  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:-2
Thread-7  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:-2
Thread-15 完成推出
Thread-35  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:-2
Thread-6  獲取鎖:Thread-6:0a81dadb-d7aa-4b7e-b389-09b8ca1b9a8e
Thread-6  執行任務
Thread-36  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-6  完成任務,釋放鎖
Thread-6 完成推出
Thread-31  獲取鎖:Thread-31:9c61f68b-e87c-4ea2-80b0-f8b6306691b4
Thread-31  執行任務
Thread-32  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-28  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-31  完成任務,釋放鎖
Thread-25  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:-2
Thread-27  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:-2
Thread-31 完成推出
Thread-71  獲取鎖:Thread-71:25934a78-73d2-4376-8749-059a0a1fe84e
Thread-71  執行任務
Thread-72  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-69  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-71  完成任務,釋放鎖
Thread-71 完成推出
Thread-67  獲取鎖:Thread-67:bf99b1a8-d867-4aba-96cd-eef02fde201f
Thread-67  執行任務
Thread-68  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-67  完成任務,釋放鎖
Thread-67 完成推出
Thread-62  獲取鎖:Thread-62:360af97e-4d35-4875-b496-a881742f7d91
Thread-62  執行任務
Thread-62  完成任務,釋放鎖
Thread-62 完成推出
Thread-95  獲取鎖:Thread-95:5b6bdd0d-0242-4fae-87de-cd3ff26c10f2
Thread-95  執行任務
Thread-95  完成任務,釋放鎖
Thread-95 完成推出
Thread-8  獲取鎖:Thread-8:3c6f02a4-2044-4934-874d-de1ae227f741
Thread-8  執行任務
Thread-8  完成任務,釋放鎖
Thread-8 完成推出
Thread-21  獲取鎖:Thread-21:858dc555-19f9-423d-9384-3bb626ec2faf
Thread-21  執行任務
Thread-21  完成任務,釋放鎖
Thread-21 完成推出
Thread-51  獲取鎖:Thread-51:3e56e439-e529-4c3b-989e-ba2de1bdac7c
Thread-51  執行任務
Thread-44  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-0  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-52  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-17  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-51  完成任務,釋放鎖
Thread-51 完成推出
Thread-45  獲取鎖:Thread-45:f0c66416-a218-492b-93e0-376ea2cafe75
Thread-45  執行任務
Thread-45  完成任務,釋放鎖
Thread-4  獲取鎖:Thread-4:580b23ff-193c-45e4-ac38-3e69ed4d43a1
Thread-4  執行任務
Thread-45 完成推出
Thread-59  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-4  完成任務,釋放鎖
Thread-63  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-96  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:-2
Thread-4 完成推出
Thread-61  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:-2
Thread-66  獲取鎖:Thread-66:4b665b15-d869-4cb2-b9bd-7dc6cfd041cf
Thread-66  執行任務
Thread-76  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-66  完成任務,釋放鎖
Thread-66 完成推出
Thread-58  獲取鎖:Thread-58:1ed59868-5df6-4ace-949a-d7e2b6251b7a
Thread-58  執行任務
Thread-58  完成任務,釋放鎖
Thread-58 完成推出
Thread-83  獲取鎖:Thread-83:5f0ed941-a213-4e8b-9f48-1e9c11a224f2
Thread-83  執行任務
Thread-91  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-92  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-83  完成任務,釋放鎖
Thread-83 完成推出
Thread-88  獲取鎖:Thread-88:85981817-d90a-46f6-bb08-fee48e60325e
Thread-88  執行任務
Thread-93  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-88  完成任務,釋放鎖
Thread-88 完成推出
Thread-89  獲取鎖:Thread-89:8c09c432-f6cf-4224-9af8-6da23fe41569
Thread-89  執行任務
Thread-87  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:-2
Thread-89  完成任務,釋放鎖
Thread-89 完成推出
Thread-82  獲取鎖:Thread-82:45f1efe0-a664-439c-ba87-291ce7869414
Thread-90  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-82  執行任務
Thread-86  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-82  完成任務,釋放鎖
Thread-82 完成推出
Thread-37  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-46  獲取鎖:Thread-46:e0189b23-fc71-4218-9727-d34a00b5bfa2
Thread-46  執行任務
Thread-41  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-46  完成任務,釋放鎖
Thread-33  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-46 完成推出
Thread-38  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:-2
Thread-26  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:-2
Thread-30  獲取鎖:Thread-30:d34fd4ed-c251-42f8-a322-cb925c523368
Thread-30  執行任務
Thread-30  完成任務,釋放鎖
Thread-30 完成推出
Thread-18  獲取鎖:Thread-18:c51f402e-057f-4617-a177-36f7f38ffaaa
Thread-18  執行任務
Thread-18  完成任務,釋放鎖
Thread-18 完成推出
Thread-11  獲取鎖:Thread-11:73e867a1-e30e-4e73-85ae-e6e69ccca673
Thread-11  執行任務
Thread-11  完成任務,釋放鎖
Thread-11 完成推出
Thread-39  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:-2
Thread-14  獲取鎖:Thread-14:10fadfea-e7b2-44de-93cb-1abffec78afc
Thread-14  執行任務
Thread-14  完成任務,釋放鎖
Thread-35  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:-2
Thread-14 完成推出
Thread-10  獲取鎖:Thread-10:e04f76dc-3abb-461f-97e7-1db5e3e6019e
Thread-10  執行任務
Thread-32  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-7  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-25  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-27  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-36  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-28  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-72  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-10  完成任務,釋放鎖
Thread-69  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-68  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:-2
Thread-10 完成推出
Thread-17  獲取鎖:Thread-17:e31fd0f7-290f-4d4e-95e8-3c490bc9adeb
Thread-17  執行任務
Thread-44  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-52  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-17  完成任務,釋放鎖
Thread-0  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:-2
Thread-17 完成推出
Thread-59  獲取鎖:Thread-59:2a64c175-c459-48ce-8e89-75b7fd50fcc8
Thread-59  執行任務
Thread-96  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-59  完成任務,釋放鎖
Thread-61  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-63  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-76  獲取鎖:Thread-76:f752bbd0-68dc-4503-8adb-a8219823fde2
Thread-76  執行任務
Thread-59 完成推出
Thread-76  完成任務,釋放鎖
Thread-76 完成推出
Thread-91  獲取鎖:Thread-91:47f7f7fa-2ba4-4211-b34d-818c871f30cd
Thread-91  執行任務
Thread-92  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-91  完成任務,釋放鎖
Thread-91 完成推出
Thread-93  獲取鎖:Thread-93:2418d59d-2152-4699-ba7d-d80a236ea396
Thread-93  執行任務
Thread-93  完成任務,釋放鎖
Thread-93 完成推出
Thread-87  獲取鎖:Thread-87:e52f78af-b61c-4bfb-89b5-1444fe232799
Thread-87  執行任務
Thread-87  完成任務,釋放鎖
Thread-87 完成推出
Thread-90  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:-2
Thread-86  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:-2
Thread-37  獲取鎖:Thread-37:91f7efed-0270-4f74-a4dc-929279518ad0
Thread-37  執行任務
Thread-37  完成任務,釋放鎖
Thread-26  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-41  獲取鎖:Thread-41:284d7c37-4a2d-475d-be02-78e95b2e6242
Thread-41  執行任務
Thread-38  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:-1
Thread-33  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:-1
Thread-37 完成推出
Thread-41  完成任務,釋放鎖
Thread-41 完成推出
Thread-39  獲取鎖:Thread-39:d68efb03-f0b4-4e56-9a47-3863954c726d
Thread-39  執行任務
Thread-39  完成任務,釋放鎖
Thread-39 完成推出
Thread-35  獲取鎖:Thread-35:2be7800d-62bb-4090-8fa7-a8bde5817e7f
Thread-35  執行任務
Thread-35  完成任務,釋放鎖
Thread-35 完成推出
Thread-7  獲取鎖:Thread-7:053755f4-6af9-4d59-838f-344d2345667e
Thread-7  執行任務
Thread-7  完成任務,釋放鎖
Thread-7 完成推出
Thread-69  獲取鎖:Thread-69:1884f542-e2fd-40f3-85f7-ab099f9c81e4
Thread-69  執行任務
Thread-69  完成任務,釋放鎖
Thread-69 完成推出
Thread-28  獲取鎖:Thread-28:d0d446ee-0cc8-46b5-8266-0af09ad51135
Thread-28  執行任務
Thread-28  完成任務,釋放鎖
Thread-28 完成推出
Thread-27  獲取鎖:Thread-27:7f50d3dd-642b-4904-80e1-86942db672da
Thread-27  執行任務
Thread-27  完成任務,釋放鎖
Thread-27 完成推出
Thread-25  獲取鎖:Thread-25:aa0faa33-24c6-4e0a-b564-308fde0af9a4
Thread-25  執行任務
Thread-25  完成任務,釋放鎖
Thread-32  獲取鎖:Thread-32:1ba54955-4b48-442d-850e-806f894e64b0
Thread-32  執行任務
Thread-36  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-68  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-72  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-25 完成推出
Thread-32  完成任務,釋放鎖
Thread-32 完成推出
Thread-52  獲取鎖:Thread-52:6bc5e341-83c9-4320-8dcf-87f3f7c297f3
Thread-52  執行任務
Thread-44  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-52  完成任務,釋放鎖
Thread-52 完成推出
Thread-0  獲取鎖:Thread-0:f8562368-1559-4204-87a1-c3b1221d574b
Thread-0  執行任務
Thread-0  完成任務,釋放鎖
Thread-0 完成推出
Thread-96  獲取鎖:Thread-96:cfacee5f-3b8e-4ae9-9442-c88cf28583b5
Thread-96  執行任務
Thread-63  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-61  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-96  完成任務,釋放鎖
Thread-96 完成推出
Thread-92  獲取鎖:Thread-92:756c7374-894e-4e90-a003-cbd2629ee8bc
Thread-92  執行任務
Thread-92  完成任務,釋放鎖
Thread-92 完成推出
Thread-86  獲取鎖:Thread-86:ffcda81d-958d-468c-848e-69bcb0752c03
Thread-86  執行任務
Thread-90  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-86  完成任務,釋放鎖
Thread-86 完成推出
Thread-38  獲取鎖:Thread-38:8e91d124-d73a-44ca-8e2f-23803c5a451f
Thread-38  執行任務
Thread-26  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-33  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-38  完成任務,釋放鎖
Thread-38 完成推出
Thread-36  獲取鎖:Thread-36:98374a8d-1dda-4763-9420-9b477725ba37
Thread-36  執行任務
Thread-36  完成任務,釋放鎖
Thread-36 完成推出
Thread-72  獲取鎖:Thread-72:439e8e70-a1d3-4017-8841-3da6de42d24b
Thread-72  執行任務
Thread-72  完成任務,釋放鎖
Thread-72 完成推出
Thread-68  獲取鎖:Thread-68:c070d2ba-ab20-43b6-ad68-01614702ba3c
Thread-68  執行任務
Thread-68  完成任務,釋放鎖
Thread-68 完成推出
Thread-44  獲取鎖:Thread-44:0b9dbf04-7506-4b3d-91a4-168c2381f062
Thread-44  執行任務
Thread-44  完成任務,釋放鎖
Thread-44 完成推出
Thread-61  獲取鎖:Thread-61:66815858-6673-405f-acc8-ee78aad0e3ab
Thread-61  執行任務
Thread-63  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-61  完成任務,釋放鎖
Thread-61 完成推出
Thread-90  獲取鎖:Thread-90:17c4cdff-2127-4def-b97d-c78819e0d3de
Thread-90  執行任務
Thread-90  完成任務,釋放鎖
Thread-90 完成推出
Thread-26  獲取鎖:Thread-26:260c89a7-4cfd-4cf5-96ef-13f2e851c3fd
Thread-26  執行任務
Thread-33  lock_withTimeout獲取鎖競爭失敗,休息1秒,繼續嘗試獲取,鎖ttl剩余:100
Thread-26  完成任務,釋放鎖
Thread-26 完成推出
Thread-63  獲取鎖:Thread-63:65832aa2-2e31-439b-a76b-590914d34d6c
Thread-63  執行任務
Thread-63  完成任務,釋放鎖
Thread-63 完成推出
Thread-33  獲取鎖:Thread-33:26b2d195-b9c3-41cb-be38-0081fcf5ae5a
Thread-33  執行任務
Thread-33  完成任務,釋放鎖
Thread-33 完成推出

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM