InterProcessLock, Revocable<InterProcessMutex>public class InterProcessMutex extends java.lang.Object implements InterProcessLock, Revocable<InterProcessMutex>
| Constructor | Description |
|---|---|
InterProcessMutex(org.apache.curator.framework.CuratorFramework client,
java.lang.String path) |
|
InterProcessMutex(org.apache.curator.framework.CuratorFramework client,
java.lang.String path,
LockInternalsDriver driver) |
| Modifier and Type | Method | Description |
|---|---|---|
void |
acquire() |
Acquire the mutex - blocking until it's available.
|
boolean |
acquire(long time,
java.util.concurrent.TimeUnit unit) |
Acquire the mutex - blocks until it's available or the given time expires.
|
protected byte[] |
getLockNodeBytes() |
|
protected java.lang.String |
getLockPath() |
|
java.util.Collection<java.lang.String> |
getParticipantNodes() |
Return a sorted list of all current nodes participating in the lock
|
boolean |
isAcquiredInThisProcess() |
Returns true if the mutex is acquired by a thread in this JVM
|
boolean |
isOwnedByCurrentThread() |
Returns true if the mutex is acquired by the calling thread
|
void |
makeRevocable(RevocationListener<InterProcessMutex> listener) |
Make the lock revocable.
|
void |
makeRevocable(RevocationListener<InterProcessMutex> listener,
java.util.concurrent.Executor executor) |
Make the lock revocable.
|
void |
release() |
Perform one release of the mutex if the calling thread is the same thread that acquired it.
|
public InterProcessMutex(org.apache.curator.framework.CuratorFramework client,
java.lang.String path)
client - clientpath - the path to lockpublic InterProcessMutex(org.apache.curator.framework.CuratorFramework client,
java.lang.String path,
LockInternalsDriver driver)
client - clientpath - the path to lockdriver - lock driverpublic void acquire()
throws java.lang.Exception
release()acquire in interface InterProcessLockjava.lang.Exception - ZK errors, connection interruptionspublic boolean acquire(long time,
java.util.concurrent.TimeUnit unit)
throws java.lang.Exception
release()acquire in interface InterProcessLocktime - time to waitunit - time unitjava.lang.Exception - ZK errors, connection interruptionspublic boolean isAcquiredInThisProcess()
isAcquiredInThisProcess in interface InterProcessLockpublic void release()
throws java.lang.Exception
release in interface InterProcessLockjava.lang.Exception - ZK errors, interruptions, current thread does not own the lockpublic java.util.Collection<java.lang.String> getParticipantNodes()
throws java.lang.Exception
java.lang.Exception - ZK errors, interruptions, etc.public void makeRevocable(RevocationListener<InterProcessMutex> listener)
RevocablemakeRevocable in interface Revocable<InterProcessMutex>listener - the listenerpublic void makeRevocable(RevocationListener<InterProcessMutex> listener, java.util.concurrent.Executor executor)
RevocablemakeRevocable in interface Revocable<InterProcessMutex>listener - the listenerexecutor - executor for the listenerpublic boolean isOwnedByCurrentThread()
protected byte[] getLockNodeBytes()
protected java.lang.String getLockPath()
Copyright © 2011–2018 The Apache Software Foundation. All rights reserved.