【发布时间】:2021-10-15 08:43:29
【问题描述】:
我是 C# 异步编程的新手。一般来说,我了解异步编程的概念,但我并不完全了解所有细节,所以我得到了这个问题。
这两种方法的概念区别是什么?
public async Task<int> Action1()
{
// ...
}
public Task<int> Action2()
{
// ...
}
当我在代码中看到它们时,我应该如何考虑它们?例如。我应该想到什么心理模型? 在哪些用例中我应该使用一个而不是另一个(如果有任何偏好)?
编辑: 这段代码有意义吗:
public async Task Action1()
{
await someAsyncMethod(); // do nothing with result
}
public Task Action2()
{
return Action1()
}
【问题讨论】:
-
您只能在标记为异步的方法中使用 await。
-
这个问题真的不是很好,你真正的问题是真正询问关键字“异步”的含义,以及如何“思考”它以及使用什么心理模型的所有部分真的很有主见。
-
你可能会觉得这很有趣:Eliding Async and Await
-
这能回答你的问题吗? How and when to use ‘async’ and ‘await’
标签: c# asynchronous .net-core async-await