Hor*_*ux7 10 c# asynchronous async-await
我应该将async/await添加到单行函数,如:
public async Task<T> GetFoo()
{
return await HandleAsync<T>(....);
}
Run Code Online (Sandbox Code Playgroud)
或者如果参数不需要异步调用,这是不必要的开销,我可以简单地写:
public Task<T> GetFoo()
{
return HandleAsync<T>(....);
}
Run Code Online (Sandbox Code Playgroud)
使用第二个重载,因为异步方法在幕后(一个额外的类)被转换为astate机器来处理等待的异步操作.
因此,第一种方法会增加不必要 第二次重载只会返回一个你仍然可以等待的任务.
我不确定异常处理如何在这里改变,但我认为它没有改变.