private async void StartOptimization() { IsRunning = true; var watch = new Stopwatch(); watch.Start(); await Task.Run(() => { Optimizer = new Optimizer(Dataset); OptimizationResult = Optimizer.Optimize(); }); var duration = TimeSpan.FromMilliseconds(watch.ElapsedMilliseconds); watch.Stop(); IsRunning = false; SelectedBlockers.Clear(); SelectedBlockers.AddRange(OptimizationResult.ResolvedBlockers); SetStatusMessage($"Finished in {duration}."); ResolveSelectedBlockersCommand.Execute(); }
private async void ResolveSelectedBlockers() { IsRunning = true; await Task.Run(() => { var resolver = new BlockerResolver(Dataset); //Resolution = resolver.GetResolution(SelectedBlockers.Select(x => x.Id).ToList()); Resolution = resolver.Resolve(SelectedBlockers.ToList()); ResolvedDataset = Resolution.ResolvedDataset; }); IsRunning = false; //SetStatusMessage($"{SelectedBlockers.Count} Blockers resolved."); }