Closed chunlaiqingke closed 3 weeks ago
public static void lockAndAutoKeepLease(final RheaKVStore rheaKVStore) { final ScheduledExecutorService watchdog = Executors.newSingleThreadScheduledExecutor(); final String lockKey = "lock_example1"; final DistributedLock<byte[]> lock = rheaKVStore.getDistributedLock(lockKey, 3, TimeUnit.SECONDS, watchdog); if (lock.tryLock()) { try { LOG.info("Lock success with: {}", lockKey); } finally { lock.unlock(); } } else { LOG.info("Fail to lock with: {}", lockKey); } ExecutorServiceHelper.shutdownAndAwaitTermination(watchdog); }
这个watchDog每次加锁都要重新创建吗? 感觉开销有点大
https://github.com/sofastack/sofa-jraft/blob/6569a15faf7ef46d22c344216ecde3e2cc765a5f/jraft-rheakv/rheakv-core/src/main/java/com/alipay/sofa/jraft/rhea/client/RheaKVStore.java#L713
看一下注释
这个watchDog每次加锁都要重新创建吗? 感觉开销有点大