Class BatchIterableProcedureFJTaskRunner<T,BT extends Procedure<? super T>>
- java.lang.Object
-
- org.eclipse.collections.impl.parallel.BatchIterableProcedureFJTaskRunner<T,BT>
-
public final class BatchIterableProcedureFJTaskRunner<T,BT extends Procedure<? super T>> extends java.lang.Object
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private class
BatchIterableProcedureFJTaskRunner.ProcedureExtractor
-
Field Summary
Fields Modifier and Type Field Description private Combiner<BT>
combiner
private java.lang.Throwable
error
private java.util.concurrent.CountDownLatch
latch
private java.util.concurrent.BlockingQueue<BT>
outputQueue
private Function<BatchIterableProcedureFJTask<T,BT>,BT>
procedureFunction
private BatchIterableProcedureFJTask<T,BT>[]
procedures
private int
taskCount
-
Constructor Summary
Constructors Constructor Description BatchIterableProcedureFJTaskRunner(Combiner<BT> newCombiner, int taskCount)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private void
combineTasks()
private void
createAndExecuteTasks(java.util.concurrent.Executor executor, ProcedureFactory<BT> procedureFactory, BatchIterable<T> batchIterable)
void
executeAndCombine(java.util.concurrent.Executor executor, ProcedureFactory<BT> procedureFactory, BatchIterable<T> set)
private void
join()
void
setFailed(java.lang.Throwable newError)
void
taskCompleted(BatchIterableProcedureFJTask<T,BT> task)
-
-
-
Field Detail
-
procedureFunction
private final Function<BatchIterableProcedureFJTask<T,BT extends Procedure<? super T>>,BT extends Procedure<? super T>> procedureFunction
-
procedures
private BatchIterableProcedureFJTask<T,BT extends Procedure<? super T>>[] procedures
-
error
private java.lang.Throwable error
-
taskCount
private final int taskCount
-
outputQueue
private final java.util.concurrent.BlockingQueue<BT extends Procedure<? super T>> outputQueue
-
latch
private final java.util.concurrent.CountDownLatch latch
-
-
Method Detail
-
createAndExecuteTasks
private void createAndExecuteTasks(java.util.concurrent.Executor executor, ProcedureFactory<BT> procedureFactory, BatchIterable<T> batchIterable)
-
setFailed
public void setFailed(java.lang.Throwable newError)
-
taskCompleted
public void taskCompleted(BatchIterableProcedureFJTask<T,BT> task)
-
executeAndCombine
public void executeAndCombine(java.util.concurrent.Executor executor, ProcedureFactory<BT> procedureFactory, BatchIterable<T> set)
-
join
private void join()
-
combineTasks
private void combineTasks()
-
-