Beispiel #1
0
        /// <summary>
        /// Прогон заданий на этом алгориме
        /// </summary>
        protected void Calc()
        {
            int               n    = tasks.Count;
            DateTime          dd   = DateTime.MinValue;
            TimeSpan          ime  = TimeSpan.MinValue;
            IOutBlackBoxParam data = null;

            foreach (ITaskPackage task in tasks)
            {
                alg.EnterParam = task.EnterParams;
                int BlackBoxesCount = task.BlackBoxes.Count;
                dd = DateTime.Now;
                function.Init(task);
                alg.Refresh();
                data = alg.Calculate();
                ime  = DateTime.Now - dd;
                if (listener != null)
                {
                    listener.OnEndTask(alg, task, data, ime.Hours * 60 * 60 * 1000 + ime.Minutes * 60 * 1000 + ime.Seconds * 1000 + ime.Milliseconds);
                }

                /* {
                 *   time += ime.Milliseconds;
                 *   listener.OnEndCalculate(alg, task, data, ime.Milliseconds);
                 * }*/
            }
        }
Beispiel #2
0
 public void OnEndTask(IAlgorithm alg, ITaskPackage task, IOutBlackBoxParam rez, int time)
 {
     if (listener != null)
     {
         listener.OnEndTask(alg, task, rez, time);
     }
 }
Beispiel #3
0
        /// <summary>
        /// Прогон заданий на этом алгориме
        /// </summary>
        protected void Calc()
        {
            int               I    = 0;
            int               n    = tasks.Count;
            DateTime          dd   = DateTime.MinValue;
            TimeSpan          ime  = TimeSpan.MinValue;
            IOutBlackBoxParam data = null;
            int               time = 0;

            foreach (ITaskPackage task in tasks)
            {
                time           = 0;
                alg.EnterParam = task.EnterParams;
                int BlackBoxesCount = task.BlackBoxes.Count;

                for (int i = 0; i < BlackBoxesCount; i++)
                {
                    dd = DateTime.Now;
                    function.Init(task.BlackBoxes[i]);
                    data = alg.Calculate();

                    ime = DateTime.Now - dd;
                    if (listener != null)
                    {
                        time += ime.Milliseconds;
                        listener.OnEndCalculate(alg, task, data, ime.Milliseconds);
                    }
                    I++;
                }
                listener.OnEndTask(alg, task, data, time);
            }
        }