public final class McParkTakeStrategy<E> extends java.lang.Object implements TakeStrategy<E>
Modifier and Type | Field and Description |
---|---|
private java.util.concurrent.locks.Condition |
cond |
private java.util.concurrent.locks.ReentrantLock |
lock |
private int |
waiters |
Constructor and Description |
---|
McParkTakeStrategy() |
Modifier and Type | Method and Description |
---|---|
void |
signal() |
boolean |
supportsSpec(ConcurrentQueueSpec qs) |
E |
waitPoll(java.util.Queue<E> q) |
private final java.util.concurrent.locks.ReentrantLock lock
private final java.util.concurrent.locks.Condition cond
private int waiters
public void signal()
signal
in interface TakeStrategy<E>
public E waitPoll(java.util.Queue<E> q) throws java.lang.InterruptedException
waitPoll
in interface TakeStrategy<E>
java.lang.InterruptedException
public boolean supportsSpec(ConcurrentQueueSpec qs)
supportsSpec
in interface TakeStrategy<E>