我正在使用 silverlight 4 和新的异步 CTP。
private void button1_Click(object sender, RoutedEventArgs e)
{
WebClient wb = new WebClient();
var t = wb.DownloadStringTaskAsync("http://www.google.com");
t.Wait();
}
此代码会导致 UI 冻结。
另一方面,这段代码工作正常:
private void button1_Click(object sender, RoutedEventArgs e)
{
WebClient wb = new WebClient();
var t = Task.Factory.StartNew(() => Debug.WriteLine("Doing something"));
t.Wait();
}
两者有什么区别,是什么导致第一个冻结?