#include <ExternalSortTask.h>
Public Member Functions | |
ExternalSortTask (ExternalSortExecStreamImpl &sortStreamInit, ExternalSortRunLoader &runLoaderInit) | |
void | execute () |
Executes this request; this satisfies the ThreadPool Task signature, allowing instances of this class to be submitted as a Task to ThreadPoolScheduler. | |
Private Attributes | |
ExternalSortExecStreamImpl & | sortStream |
The stream on behalf of which this task is working. | |
ExternalSortRunLoader & | runLoader |
The pre-loaded run to be sorted and stored by this task. |
Currently, only the run-generation phase is parallelized. After each run is loaded by the main thread, it is dispatched as a task to be sorted and stored by a thread from the pool.
Definition at line 38 of file ExternalSortTask.h.
ExternalSortTask::ExternalSortTask | ( | ExternalSortExecStreamImpl & | sortStreamInit, | |
ExternalSortRunLoader & | runLoaderInit | |||
) | [inline, explicit] |
Definition at line 51 of file ExternalSortTask.h.
00054 : sortStream(sortStreamInit), 00055 runLoader(runLoaderInit) 00056 { 00057 }
void ExternalSortTask::execute | ( | ) |
Executes this request; this satisfies the ThreadPool Task signature, allowing instances of this class to be submitted as a Task to ThreadPoolScheduler.
Definition at line 421 of file ExternalSortExecStreamImpl.cpp.
References runLoader, ExternalSortExecStreamImpl::sortRun(), sortStream, ExternalSortExecStreamImpl::storeRun(), and ExternalSortExecStreamImpl::unreserveRunLoader().
00422 { 00423 sortStream.sortRun(runLoader); 00424 sortStream.storeRun(runLoader); 00425 sortStream.unreserveRunLoader(runLoader); 00426 }
The stream on behalf of which this task is working.
Definition at line 43 of file ExternalSortTask.h.
Referenced by execute().
ExternalSortRunLoader& ExternalSortTask::runLoader [private] |
The pre-loaded run to be sorted and stored by this task.
Definition at line 48 of file ExternalSortTask.h.
Referenced by execute().