在Silverlight中我们经常要涉及到异步操作,而在WinForm、ASP.NET中我们经常涉及到的是同步操作。从ASP.NET转到Silverlight方向,在数据操作方面觉得很不习惯。有时被异步和同步弄得头昏眼花。为了弄清楚他们的区别。我自己做了一些测试,将一点体会记录下来,供以后参考学习!
(一)添加如下WCF服务BSService:
(1)接口IBSService
(2)BSService.svc.cs
(二)添加WindowsFormSyncTest项目,用于测试同步操作。
(1)Form1.cs代码如下
(2)同步操作运行截图为:
(三)添加WindowsFormsAnsycTest项目,用于测试异步操作
(1)Form1.cs代码如下
(2)异步测试运行截图如下:
总结
通过上面可以看出来,
同步:所谓同步就是 任务A--->任务B---->任务C ,只有任务A做完了才可以做任务B,任务B做完了才可做任务C,整个过程所花的时间各任务所花时间总和
异步:所谓异步就是 在同一段时间内能做n个任务,整个过程的任务所花的时间综合是最长任务所花的时间
由此可见异步操作可以大大提高操作效率。节约时间成本。