在 golang 中创建一段缓冲通道

Create a slice of buffered channel in golang

我找不到在 golang 中创建缓冲通道片段的方法。我知道如何创建如下所示的无缓冲通道片段

type ch chan int
channels := make([]ch,5)

这条语句channels := make([]ch,5)只是分配容器(长度为5的通道切片)。除此之外,您必须单独初始化每个通道,这时您会将它们声明为缓冲而不是无缓冲。所以扩展你的例子只是这样做:

for i, _ := range channels {
     channels[i] = make(chan int, BufferSize)
}