【发布时间】:2014-03-28 16:13:40
【问题描述】:
我有一个问题,这两种方法有什么区别?
async private void Button_Click_1(object sender, RoutedEventArgs e)
{
Thread.Sleep(2000);
}
private void Button_Click_2(object sender, RoutedEventArgs e)
{
Thread.Sleep(2000);
}
它们都阻止了我的用户界面。我知道我必须启动另一个线程以避免阻塞,但我发现:
“异步方法提供了一种方便的方法来完成可能长时间运行的工作,而不会阻塞调用者的线程”。
我有点困惑。
【问题讨论】:
-
您可以使用异步,但请确保您使用“等待”..
-
您知道使用
async方法得到的编译器警告吗?阅读。它会告诉你出了什么问题。
标签: c#