登录
首页 >  Golang >  Go问答

在单核环境中的 goroutine 速度更快吗?

来源:stackoverflow

时间:2024-03-05 13:27:13 397浏览 收藏

大家好,我们又见面了啊~本文《在单核环境中的 goroutine 速度更快吗?》的内容中将会涉及到等等。如果你正在学习Golang相关知识,欢迎关注我,以后会给大家带来更多Golang相关文章,希望我们能一起进步!下面就开始本文的正式内容~

问题内容

如果我运行 go 代码的服务器只有一个核心,我可以通过在其上运行 goroutine 来获得更好的性能吗?是的,为什么在没有并行性的情况下速度更快?


解决方案


这取决于代码以及您要阻止的内容。如果您阻塞 I/O(但仍有其他非 I/O 工作要做),那么单个内核上的多个 goroutine 会显着加快速度。如果您在 CPU 上阻塞,那么多个 goroutine 可能会由于额外的开销而变慢。如果您阻塞内存,那么由于额外的争用和缓存失效,多个 goroutine 可能会显着变慢。没有通用的答案;这取决于您要通过并发解决什么问题以及如何实现它。

到这里,我们也就讲完了《在单核环境中的 goroutine 速度更快吗?》的内容了。个人认为,基础知识的学习和巩固,是为了更好的将其运用到项目中,欢迎关注golang学习网公众号,带你了解更多关于的知识点!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>