public ThreadPoolExecutorOptions( string name, Type stageType, CancellationTokenSource cts, ILoggerFactory loggerFactory, int degreeOfParallelism = 1, bool drainAfterCancel = false, bool preserveOrder = true, TimeSpan?workItemExecutionTimeTreshold = null, TimeSpan?delayWarningThreshold = null, WorkItem.StatusProvider workItemStatusProvider = null, IEnumerable <ExecutionActionFilter> actionFilters = null, IEnumerable <ExecutionExceptionFilter> exceptionFilters = null) : base(name, stageType, cts, loggerFactory) { DegreeOfParallelism = degreeOfParallelism; DrainAfterCancel = drainAfterCancel; PreserveOrder = preserveOrder; WorkItemStatusProvider = workItemStatusProvider; WorkItemExecutionTimeTreshold = workItemExecutionTimeTreshold ?? TimeSpan.MaxValue; DelayWarningThreshold = delayWarningThreshold ?? TimeSpan.MaxValue; ExecutionFilters = actionFilters?.ToArray() ?? Array.Empty <ExecutionActionFilter>(); ExceptionFilters = exceptionFilters?.ToArray() ?? Array.Empty <ExecutionExceptionFilter>(); }
public Builder WithWorkItemStatusProvider(WorkItem.StatusProvider workItemStatusProvider) { Options.WorkItemStatusProvider = workItemStatusProvider; return(this); }