Task.Delay
有时我们可以用它来代替 DispatcherTimer。
比如我们需要每5秒运行一次代码B。
public async void A()
{
while (true)
{
// 每十秒执行一次
await Task.Delay(TimeSpan.FromSeconds(10));
B();
}
}
private void B()
{
}
并且如果主线程调用Foo,A会在主线程中运行,我认为你可以考虑在框架中使用这种方法。