Class WaitQueue.Standard.AbstractSignal
- java.lang.Object
-
- org.apache.cassandra.utils.concurrent.Awaitable.AbstractAwaitable
-
- org.apache.cassandra.utils.concurrent.WaitQueue.Standard.AbstractSignal
-
- All Implemented Interfaces:
Awaitable
,Condition
,WaitQueue.Signal
- Enclosing class:
- WaitQueue.Standard
public abstract static class WaitQueue.Standard.AbstractSignal extends Awaitable.AbstractAwaitable implements WaitQueue.Signal
An abstract signal implementation TODO: use intrusive linked list
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.apache.cassandra.utils.concurrent.Awaitable
Awaitable.AbstractAwaitable, Awaitable.AsyncAwaitable, Awaitable.Defaults, Awaitable.SyncAwaitable
-
Nested classes/interfaces inherited from interface org.apache.cassandra.utils.concurrent.Condition
Condition.Async, Condition.Sync
-
-
Constructor Summary
Constructors Constructor Description AbstractSignal()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description WaitQueue.Signal
await()
Await indefinitely, throwing any interrupt.boolean
awaitUntil(long nanoTimeDeadline)
Await until the deadline (in nanoTime), throwing any interrupt.-
Methods inherited from class org.apache.cassandra.utils.concurrent.Awaitable.AbstractAwaitable
await, awaitThrowUncheckedOnInterrupt, awaitThrowUncheckedOnInterrupt, awaitUninterruptibly, awaitUninterruptibly, awaitUntilThrowUncheckedOnInterrupt, awaitUntilUninterruptibly
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.cassandra.utils.concurrent.Awaitable
await, awaitThrowUncheckedOnInterrupt, awaitThrowUncheckedOnInterrupt, awaitUninterruptibly, awaitUninterruptibly, awaitUntilThrowUncheckedOnInterrupt, awaitUntilUninterruptibly
-
Methods inherited from interface org.apache.cassandra.utils.concurrent.Condition
isSignalled, signal, signalAll
-
Methods inherited from interface org.apache.cassandra.utils.concurrent.WaitQueue.Signal
cancel, checkAndClear, isCancelled, isSet
-
-
-
-
Method Detail
-
await
public WaitQueue.Signal await() throws java.lang.InterruptedException
Description copied from interface:Awaitable
Await indefinitely, throwing any interrupt. No spurious wakeups.
-
awaitUntil
public boolean awaitUntil(long nanoTimeDeadline) throws java.lang.InterruptedException
Description copied from interface:Awaitable
Await until the deadline (in nanoTime), throwing any interrupt. No spurious wakeups.- Specified by:
awaitUntil
in interfaceAwaitable
- Returns:
- true if we were signalled, false if the deadline elapsed
- Throws:
java.lang.InterruptedException
- if interrupted
-
-