首页 新闻 会员 周边

Task.GetAwaiter 方法

0
悬赏园豆:10 [已解决问题] 解决于 2019-11-26 15:44

Task.GetAwaiter或者Task.Result既然能阻塞线程,为什么还要用多线程,一直不明白.

灬丶的主页 灬丶 | 初学一级 | 园豆:2
提问于:2019-11-13 12:16
< >
分享
最佳答案
0

阻塞的是当前线程,不是所有线程

收获园豆:10
dudu | 高人七级 |园豆:30994 | 2019-11-13 13:50

你的意思是只会阻塞task新的开线程,但是不会阻塞主线程?

灬丶 | 园豆:2 (初学一级) | 2019-11-13 13:51

@灬丶: 如果是 ASP.NET ,根本没有主线程,都是从线程池拿线程处理请求

dudu | 园豆:30994 (高人七级) | 2019-11-13 14:03

@dudu: 我刚试了下,如果有A,B两个方法,Task.GetAwaiter或者Task.Result只会阻塞A方法的线程,B方法里面如果有异步方法任然会异步执行,并不会阻塞B方法的线程。不知道我这种说法对不对。

灬丶 | 园豆:2 (初学一级) | 2019-11-13 14:32
其他回答(1)
0

你让别人干活,你接着他的干活,请问你需不需要等别人干完?

花飘水流兮 | 园豆:13560 (专家六级) | 2019-11-13 18:49
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册