我有一个WPF应用程序,其中有很多事件启动任务。这是我如何做的。但我不乐意了,现在跟踪完成许多任务
var task = UpdatePersonModelAsync();
taskCollection.Add(task);
RaisePropertyChanged(nameof(IsUpdateInProgress));
await task;
taskCollection.Remove(task);
RaisePropertyChanged(nameof(IsUpdateInProgress));
的外观,显示物业/隐藏微调
public bool IsUpdateInProgress => taskCollection.Count > 0;
我在做的时候似乎是一个回调的Progress<T>
。
当所有传入任务完成时,一个小微调将被隐藏。
新任务是从不同的代码路径输入。有没有办法在合乎逻辑的地方运行/分组所有任务..也许是TaskScheduler? –
如果您需要更多的控制权,您可以使用BlockingCollection来存储任务,并通过定时器获取一堆。 – VMAtm
感谢VMAtm。请找到最新的变化 –