第 10 章:Channel——Go 并发的核心通信机制
第 10 章:Channel——Go 并发的核心通信机制
10.1 前言
Channel 是 Go 并发哲学的核心体现。"不要通过共享内存来通信,而要通过通信来共享内存"——这句话中的"通信",指的就是 channel。如果说 goroutine 是 Go 并发的执行体,那么 channel 就是 goroutine 之间传递数据和协调控制流的管道。
本章将系统讲解 channel 的分类与方向、阻塞规则、关闭规则、select多路复用、happens-before 语义,以及 channel 与time包结合实现超时控制的技巧。
