【发布时间】:2020-05-11 07:12:12
【问题描述】:
我有一个名为 Load 的方法,它是从同步方法调用的:
private async Task LoadAsync()
{
await Task.Run(() => // stuff....).ConfigureAwait(false);
}
public void HelloWorld()
{
this.LoadAsync(); // this gives me a suggestion/message, "because this call is not awaited,.... consider using await.
}
我可以通过这样做删除建议消息:
this.LoadAsync().ConfigureAWait(false);
如果没有 await 关键字,ConfigureAwait(false) 是否仍然有效(方法内的 Task.Run 将异步运行)?
【问题讨论】:
-
在您看来,
ConfigureAwait(false)“工作”意味着什么?它的行为就在方法名称中:ConfigureAwait(false)。您似乎将该方法用作一种技巧,以避免有关不等待可等待的警告。不要在你的代码中添加黑客。以正确的方式做事。有关这方面的建议,请参阅建议的副本。
标签: c# asynchronous async-await task configureawait