我试着阅读Cleary的帖子,并且还搜索了StackOverflow,但仍然没有得到关于async await和await的一些行为。任务.Run()
我的代码:
private async void ValidateLexisNexis()
{
_view.LogProcess(@"I'm Starting..", true);
await Task.Run(() => SomeAsynchMethod());
_view.LogProcess(@"Im out of SomeSynchMethod", true);
}
private async void SomeAsynchMethod()
{
await Task.Delay(2000);
MessageBox.Show(@"Hi I'm in");
}
现在我预料到了:
现在,没有2是我的问题,代码在没有2之前继续没有3,我想知道,在Task.Run之前等待的目的是什么?如果在继续记录之前等待Task.Run,那么ValidateLexisNexis不应该等待响应吗?
P.S。 - 我知道我可以在没有Task.Run的情况下使用等待SomeAsynchMehtod()然后它按预期工作,但我试图理解为什么使用Task.Run await并不等待。
感谢!!!!