.net 4.5的异步编程

来源:岁月联盟 编辑:exp 时间:2012-08-22

.net 4.5 最大的功能就是对异步编程的改进,增加了await async 关键字让异步编程变的和同步编程一样简单。这个模式是基于task parallel library实现的。

下面看下一个简单的wpf程序:

  async private void Button_Click_1(object sender, RoutedEventArgs e)
        {
            testTextBox.Text = await test();
        }
        async Task<string> test()
        {
            HttpClient httpClient = new HttpClient();
            return await httpClient.GetStringAsync("http://www.baidu.com");
        }

简单点击下按钮,异步从网上下载内容,并显示在UI,再也不用使用 Dispatcher.beginInvoke或 SynchronizationContext去更新ui信息了。.net 4.5 最大的功能就是对异步编程的改进,增加了await async 关键字让异步编程变的和同步编程一样简单。这个模式是基于task parallel library实现的。

下面看下一个简单的wpf程序:

  async private void Button_Click_1(object sender, RoutedEventArgs e)
        {
            testTextBox.Text = await test();
        }
        async Task<string> test()
        {
            HttpClient httpClient = new HttpClient();
            return await httpClient.GetStringAsync("http://www.baidu.com");
        }

简单点击下按钮,异步从网上下载内容,并显示在UI,再也不用使用 Dispatcher.beginInvoke或 SynchronizationContext去更新ui信息了。