Package org.jgroups.protocols
Class Locking.ClientCondition
java.lang.Object
org.jgroups.protocols.Locking.ClientCondition
- All Implemented Interfaces:
Condition
- Enclosing class:
Locking
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final Locking.ClientLockprotected AtomicReference<Thread> This is okay only having 1 since a client condition is 1 per lock_name, thread id combination.protected final AtomicBoolean -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidawait()protected voidawait(boolean throwInterrupt) protected longawait(long nanoSeconds) booleanNote this wait will only work correctly if the converted value is less than 292 years.longawaitNanos(long nanosTimeout) voidbooleanawaitUntil(Date deadline) voidsignal()voidprotected voidsignaled()
-
Field Details
-
lock
-
signaled
-
parker
This is okay only having 1 since a client condition is 1 per lock_name, thread id combination.
-
-
Constructor Details
-
ClientCondition
-
-
Method Details
-
await
- Specified by:
awaitin interfaceCondition- Throws:
InterruptedException
-
awaitUninterruptibly
public void awaitUninterruptibly()- Specified by:
awaitUninterruptiblyin interfaceCondition
-
awaitNanos
- Specified by:
awaitNanosin interfaceCondition- Throws:
InterruptedException
-
await
Note this wait will only work correctly if the converted value is less than 292 years. This is due to the limitation in System.nano and long values that can only store up to 292 years (2263 nanoseconds). For more information please seeSystem.nanoTime()- Specified by:
awaitin interfaceCondition- Throws:
InterruptedException
-
awaitUntil
- Specified by:
awaitUntilin interfaceCondition- Throws:
InterruptedException
-
await
- Throws:
InterruptedException
-
await
- Throws:
InterruptedException
-
signal
public void signal() -
signalAll
public void signalAll() -
signaled
protected void signaled()
-