前言
最近在实现两个需求,由于两者之间并没有依赖关系,所以想利用队列进行解耦;但在 Go
的标准库中并没有现成可用并且并发安全的数据结构;但 Go
提供了一个更加优雅的解决方案,那就是 channel
。
channel 应用
Go
与 Java
的一个很大的区别就是并发模型不同,Go 采用的是 CSP(Communicating sequential processes)
模型;用 Go 官方的说法:
Do not communicate by sharing memory; instead, share memory by communicating.