直接返回任务和等待结果然后返回结果之间有什么区别吗?
public Task<Result> GetResultAsync()
{
return ComposeResultAsync(); // returning task directly
}
private Task<Result> ComposeResultAsync()
{
// async code
}
与
public async Task<Result> GetResultAsync()
{
return await ComposeResultAsync(); // awaiting result first
}
private Task<Result> ComposeResultAsync()
{
// async code
}
有没有理由使用第一个例子,除非我需要等待另一个任务?
public async Task<Result> GetResultAsync()
{
await DoSomethingElseAsync();
return await ComposeResultAsync();
}
我仍然不确定。