# 14 协程（goroutine）与通道（channel）

作为一门 21 世纪的语言，Go 原生支持应用之间的通信（网络，客户端和服务端，分布式计算，参见第 15 章）和程序的并发。程序可以在不同的处理器和计算机上同时执行不同的代码段。Go 语言为构建并发程序的基本代码块是 协程 (goroutine) 与通道 (channel)。他们需要语言，编译器，和runtime的支持。Go 语言提供的垃圾回收器对并发编程至关重要。

**不要通过共享内存来通信，而通过通信来共享内存。**

通信强制协作。

## 链接

- [目录](directory.md)
- 上一节：[性能调试：分析并优化 Go 程序](13.10.md)
- 下一节：[并发、并行和协程](14.1.md)
