WPFコードビハインドイベントハンドラーを想像してみてください。
<Button Click="OnButtonClick" />
C#4では、ハンドラーを次のように宣言します。
private void OnButtonClick(object sender, RoutedEventArgs e) { ... }
async
C#5では、ハンドラーを宣言できます
private async void OnButtonClick(object sender, RoutedEventArgs e) { ... }
では、WPFはこれで何をしているのでしょうか。数分間検索しても何も見つかりませんでした。
await
ステートメントの後にUIの更新を実行できるようです。これは、タスクがディスパッチャースレッドで続行されることを意味しますか?
エラーが発生した場合、Task
それはWPFを介して発生しますか、それとも?Dispatcher
のみを介して発生しTaskScheduler
ますか?
これに理解しておくとよい他の興味深い側面はありますか?