public class DLockManagerImpl extends java.lang.Object implements DLockManager
| 构造器和说明 |
|---|
DLockManagerImpl() |
DLockManagerImpl(java.lang.String msg) |
| 限定符和类型 | 方法和说明 |
|---|---|
DLock |
getLock(java.lang.String lockName,
java.lang.String lockGroup)
获取分布式锁
暂时默认只有redis分布式锁,后期考虑兼容本地锁和redis两种模式
|
void |
init() |
void |
lock(DLock dLock)
阻塞方式上锁
|
void |
lock(DLock dLock,
long leaseTime,
java.util.concurrent.TimeUnit timeUnit)
阻塞方式上锁
|
boolean |
tryLock(DLock dLock)
尝试上锁(非阻塞)
|
boolean |
tryLock(DLock dLock,
long waitTime,
long leaseTime,
java.util.concurrent.TimeUnit timeUnit)
尝试上锁(非阻塞)
|
boolean |
tryLock(DLock dLock,
long waitTime,
java.util.concurrent.TimeUnit timeUnit)
尝试上锁(非阻塞)
|
void |
unlock(DLock lock)
释放锁
|
public DLockManagerImpl()
public DLockManagerImpl(java.lang.String msg)
public void init()
public DLock getLock(java.lang.String lockName, java.lang.String lockGroup)
getLock 在接口中 DLockManagerlockName - 锁名lockGroup - 锁属组(一般可为 业务名或调用类名)public void lock(DLock dLock)
DLockManagerlock 在接口中 DLockManagerdLock - 锁public void lock(DLock dLock, long leaseTime, java.util.concurrent.TimeUnit timeUnit)
DLockManagerlock 在接口中 DLockManagerdLock - 锁leaseTime - 锁的持有时间timeUnit - 时间单位public boolean tryLock(DLock dLock)
DLockManagertryLock 在接口中 DLockManagerdLock - 锁public boolean tryLock(DLock dLock, long waitTime, java.util.concurrent.TimeUnit timeUnit)
DLockManagertryLock 在接口中 DLockManagerdLock - 锁waitTime - 尝试上锁等待时间timeUnit - 时间单位public boolean tryLock(DLock dLock, long waitTime, long leaseTime, java.util.concurrent.TimeUnit timeUnit)
DLockManagertryLock 在接口中 DLockManagerdLock - 锁waitTime - 上锁等待时间leaseTime - 锁的持有时间timeUnit - 时间单位public void unlock(DLock lock)
DLockManagerunlock 在接口中 DLockManagerlock - 锁