public OperationResult Work(MultiThreadWorkerParameters parameters) { if (_workerIsUsed) { throw new InvalidOperationException("Worker can not be run twice."); } WorkInternal(parameters); _workerIsUsed = true; return(GetWorkResult()); }
protected abstract void WorkInternal(MultiThreadWorkerParameters parameters);