Пример #1
0
        private void ProceedNext()
        {
            QueueNode node = _requests.Dequeue();
            Proceeder proceeder;

            if (node.Request is AnalyzeRequest)
            {
                proceeder = new AnalyzeProceeder(node);
            }
            else
            {
                proceeder = new CommandProceeder(node);
            }

            _proceeders.Add(proceeder);
            proceeder.ProceedingFinished += reporter_AnalyzeFinished;
            var thread = new Thread(proceeder.Proceed)
            {
                IsBackground = true
            };

            _threads.Add(thread);
            thread.Start();
        }
Пример #2
0
 public CommandProceeder(QueueNode node)
 {
     RequestIProceed = node;
 }
Пример #3
0
 public AnalyzeProceeder(QueueNode node)
 {
     RequestIProceed = node;
     Analyzers       = new List <Analyzer>();
     CreateAnalyzers();
 }
Пример #4
0
 public ResponceEventArgs(Responce res, QueueNode req)
 {
     Responce = res;
     Node     = req;
 }