在我阅读技术书籍时,通常会跳到那些能够激起我兴趣的部分,或者,如果我试图提高新技术的效率,我会疯狂地剔除与当前工作直接相关的部分 。 无论你的使用初衷是什么,这里是本书的路线图,希望它能帮助你,引导你到需要的地方。 ### 第一章 并发编程介绍 本章介绍了并发的历史,阐述并发是一个重要的概念,并讨论了一些使并发难以正确的基本问题。 同时简要介绍了Go如何缓解这些负担。 如果你有相关的知识,或者只是想了解如何使用Go的并发原语技术,可以跳过本章。 ### 第二章 代码建模:序列化交互处理 本章介绍了Go的设计的一些初衷。 这将有助于为你提供与Go社区中其他人交谈的背景信息,并帮助你了解为什么代码会按照的这样那样的思考方式运行。 ### 第三章 Go的并发构建模块 这一章我们将开始深入研究Go并发原语的语法。 还会介绍标准库中的sync包,它负责处理Go的内存访问同步。 如果你之前没有在Go中使用过并发,但希望立即了解正式内容,那么这里就是开始的地方。 在Go中编写并发代码的所需基础知识很少,在这里主要是将Go的概念与其他语言和并发模型进行比较。 严格地说,没有必要理解这些东西,但这些概念可以帮助你全面了解Go语言的并发特性。 ### 第四章 Go的并发编程范式 在本章中,我们将着眼于如何把Go的并发原语组合在一起来形成有用的模式。 这些模式既可以帮助我们解决问题,也可以避免在使用中常见的错误。 如果你已经使用Go编写了一些并发代码,本章仍然是有用的。 ### 第五章 大规模并发 在本章中,我们将学习过的模式组合成更大的程序,展示服务和分布式系统中常用的经验。 ### 第六章 Goroutines和Go运行时 本章介绍Go运行时如何处理调度goroutines。 这对于那些想了解Go的运行时内部机制的人来说会很有意思。 ### 附录 附录列举了各种工具和命令,可以帮助你更轻松地编写和调试并发程序。 ***所有示例皆运行于main函数下,译者程序基于go 1.10.1运行于windows7系统下,且全部验证无误***