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 完成推出