编辑:
我看到这个问题已被标记为重复,但它并不完全相同。我特意询问 await 是否等同于 ContinueWith IN CONJUNCTION WITH TaskContinuationOptions.AttachedToParent
这是(在异步方法体内)
await SomeMethodAsync();
Console.WriteLine("hi");
相当于
Task.ContinueWith(delegate() {
Console.WriteLine("hi");
}, TaskContinuationOptions.AttachedToParent);
}
?
我在谷歌上能找到的唯一答案是这些不相等,但我不相信,因为 -
在第一个示例中,异步方法主体在第一次等待时立即将任务返回给用户,如果任务没有等待子任务(因为 AttachedToParent 选项),那么它已经完成了。
我的理智取决于这种情况。
我在谷歌上找到的答案在这里 http://social.msdn.microsoft.com/Forums/en-US/async/thread/bec2151a-abfd-43b9-a2e0-ffe34ae481f6/