众所周知,在C#中,async
方法应该用后缀命名" Async" (例如ReadAsync
,CreateAsync
)。
但在许多情况下,异步方法中不需要async/await
,例如:
public async Task<string> DoSomethingAsync()
{
return await GetAsync();
}
可以改写为:
public Task<string> DoSomethingAsync()
{
return GetAsync();
}
我的问题是:
对于async/await
完全可选的上述情况,哪个版本更正确?保持async/await
或直接返回Task
如果第二个版本更好(直接返回Task
),它是否通常仍然以后缀命名&#34; Async&#34; (即DoSomethingAsync
)或不(即DoSomething
)?
答案 0 :(得分:6)
对于上面的情况,async / await是完全可选的,哪个版本更正确?保持async / await或直接返回任务?
我更喜欢直接退回Task
,但我写了an entire blog post on when this is appropriate and not。
如果第二个版本更好(直接返回一个任务),它是否通常仍然以后缀“Async”(即DoSomethingAsync)命名(即DoSomethingAsync)?(
)
是。 Async
后缀表示“返回等待”。