所以这是场景:
static async void Main(string[] args)
{
await AnAsyncMethod();
}
private static async task<bool> AnAsyncMethod()
{
var x = await someAsyncMethod();
var y = await someOtherAsyncMethod();
return x == y;
}
Run Code Online (Sandbox Code Playgroud)
"someAsyncMethod"和"someOtherAsyncMethod"是否同步运行,因为我们正在使用await,或者它们是否按照执行顺序异步运行?
UPDATE
鉴于以下答案说明等待的异步方法将按顺序运行,如果我们只是停止执行并等待那些方法的返回值,那么首先使这些方法调用异步的目的是什么?我曾经看过过去的原生应用程序使用await/async作为释放UI线程的方法,但是有没有其他原因可以解释为什么这个设计是可取的呢?