using System.Threading.Tasks.Schedulers; namespace BBWYB.Server.Business { public class TaskSchedulerManager { public LimitedConcurrencyLevelTaskScheduler SyncProductTaskScheduler { get; private set; } public LimitedConcurrencyLevelTaskScheduler SyncOrderTaskScheduler { get; private set; } public LimitedConcurrencyLevelTaskScheduler PurchaseOrderCallbackTaskScheduler { get; private set; } public LimitedConcurrencyLevelTaskScheduler AggregationPurchaserTaskScheduler { get; private set; } public LimitedConcurrencyLevelTaskScheduler OptimizationTaskScheduler { get; private set; } public TaskSchedulerManager() { SyncOrderTaskScheduler = new LimitedConcurrencyLevelTaskScheduler(10); PurchaseOrderCallbackTaskScheduler = new LimitedConcurrencyLevelTaskScheduler(10); SyncProductTaskScheduler = new LimitedConcurrencyLevelTaskScheduler(10); AggregationPurchaserTaskScheduler = new LimitedConcurrencyLevelTaskScheduler(1); OptimizationTaskScheduler = new LimitedConcurrencyLevelTaskScheduler(3); } } }