【发布时间】:2012-09-23 22:58:46
【问题描述】:
想象一个 WPF 代码隐藏事件处理程序:
<Button Click="OnButtonClick" />
在 C# 4 中,您可以将处理程序声明为:
private void OnButtonClick(object sender, RoutedEventArgs e) { ... }
在 C# 5 中,您可以声明 async 处理程序
private async void OnButtonClick(object sender, RoutedEventArgs e) { ... }
那么 WPF 对此做了什么?几分钟的搜索没有任何结果。
似乎可以在 await 语句之后执行 UI 更新。这是否意味着任务在 Dispatcher 线程上继续执行?
如果 Task 引发错误,是通过 WPF Dispatcher 引发错误,还是仅通过 TaskScheduler 引发错误?
还有其他有趣的方面可以很好理解吗?
【问题讨论】:
标签: c# .net wpf asynchronous c#-5.0