ParallelWorkItemDispatcher
ParallelWorkItemDispatcher handles execution of work items by
queuing them for worker threads to process.
Enumerates all the shifts supported by the dispatcher
Construct a ParallelWorkItemDispatcher
Cancel the ongoing run completely.
If no run is in process, the call has no effect.
Dispatch a single work item for execution. The first
work item dispatched is saved as the top-level
work item and used when stopping the run.