码迷,mamicode.com
首页 > Windows程序 > 详细

WinPhone8.1异步编程

时间:2015-01-13 01:20:15      阅读:278      评论:0      收藏:0      [点我收藏+]

标签:

什么是异步编程?

采用异步编程是为了解决等待磁盘IO而造成的性能瓶颈问题。

什么时候应用异步编程?

你在请求一个Web服务的时候,需要进行网络传输资源,这时候就可以开一个新的线程去处理这些工作,主线程不必等待传输的完成。总的来说在网络编程、IO和数据库读写都可以使用异步编程。

Demo Time!

首先我们写一个小例子来理解一下什么是异步编程。

建一个Winphone程序,我们在OnNavigatedTo函数中调用一个AsyncFunction方法让线程休息2秒(你也可以让他做点别的事情),打印出OnNavigatedTo函数和AsyncFunction函数执行的开始、结束,代码如下:

        protected override void OnNavigatedTo(NavigationEventArgs e)
        {
            txt.Text = "OnNavigatedTo开始执行"+"-->";
            AsyncFunction();
            txt.Text += "OnNavigatedTo执行结束" + "-->";
        }

        private async void AsyncFunction()
        {
            txt.Text += "AsyncFunction开始执行" + "-->";
            await Task.Delay(2000);
            txt.Text += "AsyncFunction执行结束";
        }

执行结果:

技术分享

从执行结果我们可以看到,程序从OnNavigatedTo方法进入,调用AsyncFunction方法后,开了一个新的线程去执行AsyncFunction中的语句,主线程没有等待,继续执行。

有没有感觉很爽?

WinPhone8.1异步编程

标签:

原文地址:http://www.cnblogs.com/biweikang/p/4220255.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!