Package org.infinispan.util.concurrent
Class ReclosableLatch
- java.lang.Object
-
- java.util.concurrent.locks.AbstractOwnableSynchronizer
-
- java.util.concurrent.locks.AbstractQueuedSynchronizer
-
- org.infinispan.util.concurrent.ReclosableLatch
-
- All Implemented Interfaces:
java.io.Serializable
public class ReclosableLatch extends java.util.concurrent.locks.AbstractQueuedSynchronizerA thread gate, that uses anAbstractQueuedSynchronizer. This implementation allows you to create a latch with a default state (open or closed), and repeatedly open or close the latch.- Since:
- 4.0
- Author:
- Manik Surtani (manik@jboss.org)
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description ReclosableLatch()ReclosableLatch(boolean defaultOpen)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidawait()booleanawait(long time, java.util.concurrent.TimeUnit unit)voidclose()booleanisOpened()voidopen()java.lang.StringtoString()inttryAcquireShared(int ignored)booleantryReleaseShared(int state)-
Methods inherited from class java.util.concurrent.locks.AbstractQueuedSynchronizer
acquire, acquireInterruptibly, acquireShared, acquireSharedInterruptibly, compareAndSetState, getExclusiveQueuedThreads, getFirstQueuedThread, getQueuedThreads, getQueueLength, getSharedQueuedThreads, getState, getWaitingThreads, getWaitQueueLength, hasContended, hasQueuedPredecessors, hasQueuedThreads, hasWaiters, isHeldExclusively, isQueued, owns, release, releaseShared, setState, tryAcquire, tryAcquireNanos, tryAcquireSharedNanos, tryRelease
-
-
-
-
Method Detail
-
tryAcquireShared
public final int tryAcquireShared(int ignored)
- Overrides:
tryAcquireSharedin classjava.util.concurrent.locks.AbstractQueuedSynchronizer
-
tryReleaseShared
public final boolean tryReleaseShared(int state)
- Overrides:
tryReleaseSharedin classjava.util.concurrent.locks.AbstractQueuedSynchronizer
-
open
public final void open()
-
close
public final void close()
-
isOpened
public boolean isOpened()
-
await
public final void await() throws java.lang.InterruptedException- Throws:
java.lang.InterruptedException
-
await
public final boolean await(long time, java.util.concurrent.TimeUnit unit) throws java.lang.InterruptedException- Throws:
java.lang.InterruptedException
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.util.concurrent.locks.AbstractQueuedSynchronizer
-
-