采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
同步调用会阻塞,为什么会引起效率低于select异步轮询?为什么会引起定时器有延迟?
你的问题不就是答案吗?阻塞自然会比非阻塞的要低效啊
假设在一个协程里面阻塞和在一个协程里面使用select非阻塞,非阻塞就是他能去做其他事情,但是select一般不都是在for循环里面,一直重复等待chan有值,阻塞则是等着有值,没感觉哪个更高效呀?
首先select不一定会在for里面,我们写到for里面是强制让它一直处于监听状态。更多的情况下select是顺序调用而非循环。 第二,同步调用是指在当前goroutine没有调用新gotoutine之前所有的操作都是顺序执行,不单单是等待。
登录后可查看更多问答,登录/注册
从零开始,全面掌握Go语言编码的架构风格和开发Web的关键技能
1.2k 13
1.3k 8
1.4k 7
844 7
1.9k 7