public abstract class AbstractResourceLock extends Object implements ResourceLock
| Constructor and Description |
|---|
AbstractResourceLock(ResourceId resourceId) |
| Modifier and Type | Method and Description |
|---|---|
AbstractResourceLock |
active() |
protected abstract void |
alloc()
申请逻辑锁,阻塞直到成功
|
protected abstract boolean |
allocated() |
ResourceId |
getId() |
long |
getLastActive() |
boolean |
isDeath() |
void |
lock() |
protected abstract void |
release()
释放逻辑锁
|
protected abstract boolean |
tryAlloc()
尝试申请逻辑锁
|
protected abstract boolean |
tryAlloc(long time)
尝试申请逻辑锁,最长time毫秒
|
boolean |
tryLock() |
boolean |
tryLock(long time,
TimeUnit unit) |
void |
unlock() |
public AbstractResourceLock(ResourceId resourceId)
protected abstract void alloc()
protected abstract boolean allocated()
protected abstract void release()
protected abstract boolean tryAlloc()
protected abstract boolean tryAlloc(long time)
time - public AbstractResourceLock active()
public long getLastActive()
public void lock()
lock in interface ResourceLockLock.lock()public boolean isDeath()
public boolean tryLock()
tryLock in interface ResourceLockLock.tryLock()public boolean tryLock(long time,
TimeUnit unit)
throws InterruptedException
tryLock in interface ResourceLockInterruptedExceptionLock.tryLock(long, TimeUnit)public void unlock()
unlock in interface ResourceLockLock.unlock()public ResourceId getId()
Copyright © 2020. All rights reserved.