Пример #1
0
        public void MakeScheduler()
        {
            IDictionary <string, int> values = GetTimerValues();
            WorkerScheduler           js     = new WorkerScheduler(Services, values);

            js.StartSchedule();
        }
Пример #2
0
 public StreamAdvanceCopier(IStreamReader reader, IProcessor processor,
                            IQueueToStreamWriter <IndexedBuffer> writer, Logger logger, WorkerScheduler scheduler)
 {
     this.processor = processor;
     this.logger    = logger;
     this.scheduler = scheduler;
     this.writer    = writer;
     this.reader    = reader;
 }
Пример #3
0
        public WorkerStatusResponse GetWorkerStatus()
        {
            var current = WorkerScheduler.CurrentlyWorked as Algorithm;

            return(new WorkerStatusResponse
            {
                CurrentlyWorkedAlgorithmInstance = current == null ? (Guid?)null : current.Id,
                IsBusy = !WorkerScheduler.CanAcceptWork()
            });
        }
Пример #4
0
        public void Start()
        {
            try
            {
                _applicationId = Log();

                WorkerCommon workerData = new WorkerCommon(_applicationId);

                Task checkerTask = Task.Factory.StartNew(() =>
                {
                    try
                    {
                        WorkerChecker statusChecker = new WorkerChecker(workerData, _cancelTokenSource.Token);
                        statusChecker.Start();
                    }
                    catch (Exception ex)
                    {
                        ErrorManager.LogError(ex);
                    }
                }, _cancelTokenSource.Token);
                _workers.Add(checkerTask);

                Task schedulerTask = Task.Factory.StartNew(() =>
                {
                    try
                    {
                        WorkerScheduler scheduler = new WorkerScheduler(workerData, _cancelTokenSource.Token);
                        scheduler.Start();
                    }
                    catch (Exception ex)
                    {
                        ErrorManager.LogError(ex);
                    }
                }, _cancelTokenSource.Token);
                _workers.Add(schedulerTask);

                Task starterTask = Task.Factory.StartNew(() =>
                {
                    try
                    {
                        WorkerStarter starter = new WorkerStarter(workerData, _cancelTokenSource.Token);
                        starter.Start();
                    }
                    catch (Exception ex)
                    {
                        ErrorManager.LogError(ex);
                    }
                }, _cancelTokenSource.Token);
                _workers.Add(starterTask);
            }
            catch (Exception ex)
            {
                ErrorManager.LogError(ex);
            }
        }
Пример #5
0
 public Compressor(WorkerScheduler scheduler, Logger logger) : base(scheduler, logger)
 {
 }
Пример #6
0
 public GzipCompressorFactory(Logger logger, WorkerPool workerPool)
 {
     this.logger     = logger;
     workerScheduler = new WorkerScheduler(workerPool, logger);
 }
 protected ParallelProcessor(WorkerScheduler scheduler, Logger logger)
 {
     this.scheduler = scheduler;
     Logger         = logger;
 }