请点击上方蓝字TonyBai订阅公众号!
你好,我是Tony Bai。
欢迎来到【Go并发调度艺术】微专栏。在这个系列里,我们将一起深入探索Go语言并发模型的基石——调度器。我们将不仅仅学习“是什么”,更要追本溯源,跟随Go调度器的核心设计者之一Dmitry Vyukov的思考路径,理解“为什么这么设计”。我希望通过这种方式,能帮助大家将调度器的核心理念内化为自己的知识,而不仅仅是应对面试的记忆碎片。
今天,我们从故事的起点开始:Go语言对并发的“初心”是什么?为了实现这些目标,Goroutine是如何被构想出来的?以及早期调度模型(M:N)是如何探索并暴露出新的挑战的?
首先,我们来看看Go团队究竟为Goroutine调度器构想出一个怎样的设计目标。