C# 中的await

今天看代码遇到了很多await,梳理一下await的用法。

await只针对awaitable对象,经常和Task一起使用,主要用法如下:

var task = RunAsync(); //开始执行异步操作
DoSomeThing(); //主线程开始执行其他操作
await task; //主线程阻塞,等待task异步执行完成
DoOtherThing() //再执行其他操作

 

参考用法:

创建自己的awaitable类型

async和await用法 

其他语言中也有相关语法:

体验异步的终极解决方案-ES7的Async/Await

 

另外.net中使用Task,BackgroundWorker,ThreadPool也能很方便的实现异步。

posted @ 2017-12-19 14:22  致林  阅读(5179)  评论(4编辑  收藏  举报