如何优雅的关闭channel
单一生产者,单一消费者
单一生产者,多消费者
多生产者,单一消费者
多生产者,多消费者
https://zhuanlan.zhihu.com/p/32529039
原则:遇到chan的场景,首先要界定清生产者和消费者,生产者负责生产与关闭chan,消费者只管消费,消费者千万不要去关闭chan。
一、for range 读取chan,当chan关闭时程序会跳出for range
二、使用v,ok := <-chan channel 模式,每次判断ok,当ok为false时代表chan已关闭,就不要再读取已经关闭的chan了