Package org.apache.ignite.internal.util
Class GridConcurrentMultiPairQueue<K,V>
- java.lang.Object
-
- org.apache.ignite.internal.util.GridConcurrentMultiPairQueue<K,V>
-
- Type Parameters:
K- The type of key in input pair collection.V- The type of value array.
public class GridConcurrentMultiPairQueue<K,V> extends Object
Concurrent queue that wraps collection ofPair<K, V[]>The only garanteenext(org.apache.ignite.internal.util.GridConcurrentMultiPairQueue.Result<K, V>)provided is sequentially emptify values per key array. i.e. input like:
p1 = new Pair<1, [1, 3, 5, 7]>
p2 = new Pair<2, [2, 3]>
p3 = new Pair<3, [200, 100]>
and further sequence ofpollorforEachcalls may produce output like:
[3, 200], [3, 100], [1, 1], [1, 3], [1, 5], [1, 7], [2, 2], [2, 3]
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classGridConcurrentMultiPairQueue.Result<K,V>State holder.
-
Field Summary
Fields Modifier and Type Field Description static GridConcurrentMultiPairQueueEMPTY
-
Constructor Summary
Constructors Constructor Description GridConcurrentMultiPairQueue(Collection<T2<K,V[]>> items)GridConcurrentMultiPairQueue(Map<K,? extends Collection<V>> items)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description intinitialSize()booleanisEmpty()booleannext(GridConcurrentMultiPairQueue.Result<K,V> res)Retrieves and removes the head of this queue, or returnsfalseif this queue is empty.
-
-
-
Field Detail
-
EMPTY
public static final GridConcurrentMultiPairQueue EMPTY
-
-
Constructor Detail
-
GridConcurrentMultiPairQueue
public GridConcurrentMultiPairQueue(Map<K,? extends Collection<V>> items)
-
GridConcurrentMultiPairQueue
public GridConcurrentMultiPairQueue(Collection<T2<K,V[]>> items)
-
-
Method Detail
-
next
public boolean next(GridConcurrentMultiPairQueue.Result<K,V> res)
Retrieves and removes the head of this queue, or returnsfalseif this queue is empty.- Returns:
trueifnext(org.apache.ignite.internal.util.GridConcurrentMultiPairQueue.Result<K, V>)return non empty result, orfalseif this queue is empty
-
isEmpty
public boolean isEmpty()
- Returns:
trueif empty.
-
initialSize
public int initialSize()
- Returns:
- Constant initialisation size.
-
-