/// <summary> /// Initializes a new instance of the <see cref="TaskSchedulerMultiple"/> class. /// </summary> /// <param name="configuration">The configuration.</param> /// <param name="waitForFreeThread">The wait for free thread.</param> /// <param name="metrics">The metrics.</param> /// <param name="jobCounter">The job counter.</param> /// <param name="multipleConfiguration">The multiple configuration.</param> public TaskSchedulerMultiple(ITaskSchedulerConfiguration configuration, IWaitForEventOrCancelThreadPool waitForFreeThread, IMetrics metrics, ITaskSchedulerJobCountSync jobCounter, TaskSchedulerMultipleConfiguration multipleConfiguration) : base(configuration, waitForFreeThread, metrics) { Guard.NotNull(() => jobCounter, jobCounter); Guard.NotNull(() => multipleConfiguration, multipleConfiguration); _jobCount = jobCounter; MultipleConfiguration = multipleConfiguration; }
/// <summary> /// Initializes a new instance of the <see cref="TaskSchedulerBus" /> class. /// </summary> /// <param name="logFactory">The log factory.</param> /// <param name="configuration">The configuration.</param> public TaskSchedulerBus(ILogFactory logFactory, TaskSchedulerMultipleConfiguration configuration) { _log = logFactory.Create(); _nodes = new Dictionary <NodeKey, DateTime>(); _broadcastPort = configuration.BroadCastPort; }