Я использую 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();
}
Этот код приводит к зависанию пользовательского интерфейса.
С другой стороны, этот код работает нормально:
private void button1_Click(object sender, RoutedEventArgs e)
{
WebClient wb = new WebClient();
var t = Task.Factory.StartNew(() => Debug.WriteLine("Doing something"));
t.Wait();
}
В чем разница между ними и что вызывает зависание первого?