首页 > 代码库 > WinPhone8.1异步编程
WinPhone8.1异步编程
什么是异步编程?
采用异步编程是为了解决等待磁盘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异步编程
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。