第 8 章 同步

我们在之前多次提到,Go语言除了为应用程序开发者提供了自己特有的并发编程模型和工具之外,还提供了传统的同步工具。它们都在Go语言的标准库代码包syncsync/atomic中。这些工具使我们有了第二种选择。它们很简单,也很直观。如果读者仔细阅读过我们在第6章介绍的多进程和多线程编程的话,应该还会记得原子操作、互斥量、条件变量等名词。在Go语言中,这些名词都被沿用了。当然,它们从概念和用法上也都是非常相似的。下面,我们就来介绍这些同步工具。