在我的WPF MVVM应用程序中,我有一些永久运行的后台任务,我是这样创建它的:
Task.Run(async () =>
{
while (true)
{
if (IsStarted)
{
// Do some processing and update the UI via bound properties.
}
await Task.Delay(300);
}
});
我应该把它改成await Task.Delay(300).ConfigureAwait(false);
吗?我看了看周围,但无法确定是否冗余,因为它已经在一个线程池线程中等待。
.ConfigureAwait(false)
- 当您在循环中执行延迟时,这将更有效。 - Fabio