Пример #1
0
 internal void Unregister(ResultView rv)
 {
     dispatcher.Invoke(() =>
     {
         ResultViewList.Remove(rv);
     });
 }
Пример #2
0
        private void StartSolver(Func <string, string> task, string inputData, ResultView rv, TimeMeasure tm)
        {
            try
            {
                tm.Register(rv);
                rv.Value        = "Running";
                rv.RunningState = ERunningState.Running;
                rv.Value        = task(inputData);
                tm.Unregister(rv);

                if (string.IsNullOrEmpty(rv.Value))
                {
                    rv.Value = "No result";
                }
                rv.RunningState = ERunningState.Finished;
            }
            catch (NotImplementedException)
            {
                rv.Value = "Task not Implemented";
                tm.Unregister(rv);
                rv.RunningState = ERunningState.NotImplemented;
            }
            catch (Exception ex)
            {
                rv.Value = ex.ToString();
                tm.Unregister(rv);
                rv.RunningState = ERunningState.Exception;
            }
            tm.TaskFinished();
        }
Пример #3
0
 internal void Register(ResultView rv)
 {
     dispatcher.Invoke(() =>
     {
         ResultViewList.Add(rv, sw.ElapsedMilliseconds);
         rv.Time = $"0s";
     });
 }