首页 > 代码库 > Await Async和Thread.waitAll想法?未完待续

Await Async和Thread.waitAll想法?未完待续

【管理员】四九-李冰-修行者(2216529884) 2017/7/3 17:15:12

看着就可以了,这种东西是有使用场景的。并不是你用了就一定有提升的
【管理员】上海-xx科技(lovepoint77@163.com) 2017/7/3 17:16:59
就算符合场景,那这个还是以 同步方式执行阿,看不出意义在哪
【管理员】四九-李冰-修行者(2216529884) 2017/7/3 17:16:59
主要就是给IO用的,web项目瓶颈在IO访问
它释放资源了
【技术支持】胡建-kukubashen<kukubashen@gmail.com> 2017/7/3 17:17:30
这个是以异步方式执行的。。。
【管理员】四九-李冰-修行者(2216529884) 2017/7/3 17:17:36
你无论用不用异步花费时间是一样多的,这能理解吧
【管理员】上海-xx科技(lovepoint77@163.com) 2017/7/3 17:18:25
我貌似把这边的异步 和脑子里想的 2个线程同步执行 搞混了?
【管理员】四九-李冰-修行者(2216529884) 2017/7/3 17:18:39
假设你的线程池里有1000个线程,同步方法就是一个请求占死一个线程,并发最高是不是就1000个请求
【管理员】四九-李冰-修行者(2216529884) 2017/7/3 17:19:25
异步IO就会把操作IO的线程给回收掉,等IO反馈之后重启工作线程
在大数据量操作时,提高了服务器请求吞吐量
【管理员】四九-李冰-修行者(2216529884) 2017/7/3 17:20:30
操作IO的线程的意思是工作池里的那个线程,IO和CPU有各自的调度器
异步会释放CPU的线程,从而增加吞吐量

胡建-kukubashen撤回了一条消息
【管理员】上海-xx科技(lovepoint77@163.com) 2017/7/3 17:22:11
道理是这样没错 很容易理解
那这一切都要归功于异步方法了,而不是 await
?
【管理员】四九-李冰-修行者(2216529884) 2017/7/3 17:23:05
await是语法糖啊
不过不推荐使用了,3.5的语法糖吧
现在不都用task了吗
【精通】四川-悠燃咲夜(370250398) 2017/7/3 17:24:28
像这样么
【管理员】四九-李冰-修行者(2216529884) 2017/7/3 17:24:33
可以看看mongodb的c#驱动源码,大量的异步方法
阅读一下差不多就理解了
【管理员】上海-xx科技(lovepoint77@163.com) 2017/7/3 17:25:11
我只想知道 await xxAsync() 有没有意义
。。
【管理员】四九-李冰-修行者(2216529884) 2017/7/3 17:25:54
加了就会等待,不加就直接执行下一句代码
【管理员】上海-xx科技(lovepoint77@163.com) 2017/7/3 17:26:32
是这样的
【入门】.Net 北京 海平面(43919168) 2017/7/3 17:26:38
async 和 await 结合 用的
【管理员】上海-xx科技(lovepoint77@163.com) 2017/7/3 17:26:48
不加我感觉有意义。 加了还有啥意义吗
【入门】.Net 北京 海平面(43919168) 2017/7/3 17:27:01
加了  就 是 异步 执行
就 会 开一个线程 执行
4.0 以后 才 有的
【管理员】上海-xx科技(lovepoint77@163.com) 2017/7/3 17:28:54
我只想知道 两个一起出现,有意义不,能节约时间不?
【入门】.Net 北京 海平面(43919168) 2017/7/3 17:29:51
有 啊,后台执行。执行完 返回 结果。
不 阻塞 主进程

 

 

 

我对这个 await xxasync的想法本来是这样:1)方法A里面 分别异步开3个线程去执行耗时的查询,然后 Thread.waitAll之后统一返回给浏览器。 听你这样讲,现在理解貌似, 相差很远,一个是 CPU角度出发,一个是业务角度出发。

以上是关于await xxAsync()方法的使用记录。未完全搞清楚,待续。。求朋友们给一些 自己的见解。

Await Async和Thread.waitAll想法?未完待续