編集:
この質問は重複としてマークされていますが、まったく同じではありません。await が TaskContinuationOptions.AttachedToParent と連動して ContinueWith に相当するかどうかについて具体的に尋ねています
これですか(非同期メソッド本体内)
await SomeMethodAsync();
Console.WriteLine("hi");
に相当する
Task.ContinueWith(delegate() {
Console.WriteLine("hi");
}, TaskContinuationOptions.AttachedToParent);
}
?
Googleで見つけた唯一の答えは、これらは同等ではないと言っていますが、私はそれを信じていません-
最初の例では、非同期メソッド本体は、最初の await に達するとすぐに Task をユーザーに返します。タスクが子タスクで待機していなかった場合 (AttachedToParent オプションのため)、タスクは既に完了しています。
私の正気は、これが事実であるかどうかにかかっています。
Google で見つけた回答はこちら http://social.msdn.microsoft.com/Forums/en-US/async/thread/bec2151a-abfd-43b9-a2e0-ffe34ae481f6/