C# 异步编程

异步编程就是,程序无须按照代码顺序自上而下的执

走进异步编程的世界:https://www.cnblogs.com/liqingwen/p/5831951.html

什么是异步编程:https://www.cnblogs.com/jubaotan/p/9244185.html

https://www.cnblogs.com/wphl-27/p/10534704.html

 

这里记录一下初始学习异步编程。首先理解异步这个操作:举个例子来说吧。我们每个人可以做
很多事情(这里用:事情一,事情二,事情三),我们自己如果需要完成这三件事情的话,那么
基本上来说是要有顺序的一件一件的完成,也就是“一心不能二用”的道理。那么如果我们想提高
效率,快速的完成这三件事情呢,那我们按照人的惯性思维,找人帮忙做就行了。其实异步就跟
这个道理差不多。程序代码是由线程来调用执行的,其实一个线程就相当于一个人的意思。在程
序代码中为了解决文件IO的操作和网络请求等相关操作,我们会用对其采用脱离主线程,采用异
步新开启一个线程去操作文件IO或者Web请求,从而实现提高程序的效率,也避免了主线程迟迟
等待文件IO或者Web请求完成才能继续执行下一步代码的问题。
 

C#中的异步编程Async 和 Await

谈到C#中的异步编程,离不开Async和Await关键字

谈到异步编程,首先我们就要明白到底什么是异步编程。 平时我们的编程一般都是同步编程,所谓同步编程的意思,和我们平时说的同时做几件事情完全不同。 在计算机的世界里,同步编程的意思说 按照顺序来执行,或者说是 一个接着一个地有序的来执行, 比如目前我们在代码中有三件任务来执行,那么必须先执行完第1件,再执行第2件,接下来再执行第3件。 在这个过程中,第1件没有完成,你是没法开始做第2件事情的,必须等待。

比如一个人烧开水需要10分钟,5分钟找杯子,5分钟找茶叶。 这件事情在同步编程的世界里需要20分钟完成,因为必须先烧开水10分钟,等烧完开水后。 才开始做第2件事情找杯子,花费5分钟。 找完杯子后,才开始做第3件事情-找茶叶,又花费5分钟。这样,整个过程就花费了20分钟。但其实这3件事情可以同时做,互相并不影响,这就是异步编程的概念了

由上面这个例子中可以发现,在计算机编程世界里,【异步编程】才是真正的同时进行事情,而【同步编程】是一件一件的有序执行。 上面的例子,如果采用异步编程,那么10分钟就可以全部完成。

 

在C#中,异步编程中有三个方面需要注意:

1.为了表示一个方法是异步方法,需要使用async关键字来修饰该方法签名

2. 异步方法的返回值类型 --- 只有 void, Task 和 Task<T>

3. 在异步方法内部,你需要使用await关键字来修饰一个可以等待的【可等待】类型,来实现异步

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值