Class ControlledWorkerJoin

All Implemented Interfaces:
AutoCloseable, Runnable, CloseableIteration<BindingSet,QueryEvaluationException>, Iteration<BindingSet,QueryEvaluationException>, ParallelExecutor<BindingSet>
Direct Known Subclasses:
ControlledWorkerBoundJoin

public class ControlledWorkerJoin extends JoinExecutorBase<BindingSet>
Execute the nested loop join in an asynchronous fashion, i.e. one binding after the other (but concurrently) The number of concurrent threads is controlled by a ControlledWorkerScheduler which works according to the FIFO principle. This join cursor blocks until all scheduled tasks are finished, however the result iteration can be accessed from different threads to allow for pipelining.
Author:
Andreas Schwarte