public class InmemDLock extends AbstractDLock
IDLock.DEFAULT_LOCK_DURATION_MS| Constructor and Description |
|---|
InmemDLock(String name) |
| Modifier and Type | Method and Description |
|---|---|
void |
destroy() |
LockResult |
lock(String clientId,
long lockDurationMs)
Acquire the lock for
clientId for a duration of
lockDurationMs. |
LockResult |
unlock(String clientId)
Release the lock.
|
close, getClientId, getLockProperties, getLockProperty, getName, getTimestampExpiry, init, lock, setClientId, setLockProperties, setName, setTimestampExpiry, toString, updateLockHolderpublic InmemDLock(String name)
public void destroy()
destroy in class AbstractDLockpublic LockResult lock(String clientId, long lockDurationMs)
clientId for a duration of
lockDurationMs.
Reentrant: lock can be acquired multiple times by the same
clientId. Lock's expiry will be extended accordingly.
clientId - within a namespace, only one client is allowed to hold lock as
a given timeLockResult.SUCCESSFUL if successful,
LockResult.HOLD_BY_ANOTHER_CLIENT if lock is currently
hold by another clientpublic LockResult unlock(String clientId)
clientId - within a namespace, only one client is allowed to hold lock as
a given timeLockResult.SUCCESSFUL if successful,
LockResult.HOLD_BY_ANOTHER_CLIENT if lock is currently
hold by another client, LockResult.NOT_FOUND if the lock
is not currently hold by any client (not locked before, or
already expired)Copyright © 2018 DDTH. All rights reserved.