【发布时间】:2014-12-18 10:31:17
【问题描述】:
例如,在下面的代码中,最后一个方法 M2Async 是同步的,并且没有 async/await,否则需要在 await 之后调用 M3Async 并且调用图会继续?
为了清楚起见(简而言之,来自 C#):
- 同步操作在返回调用者之前完成其工作。
-
异步操作在返回给调用者后完成(大部分或全部)工作。
public void Main() { 任务task = M1Async(); // 一些工作 int i = task.result; // 使用 i 等 }
私有异步任务 M1Async() { int i = 等待 M2Async(); // 一些工作 返回我; }
私有任务 M2Async() { 返回 Task.FromResult(2); }
【问题讨论】:
标签: c# asynchronous