实现的是创建10个channel,分别打印不同的str
// 从channel内接受数据func worker(ID int, c chan int) { for { fmt.Printf("Worker %d, print %c\n", ID, <-c) }}func chanDemo() { // 创建10个channel var channels [10]chan int for i := 0; i < 10; i++ { channels[i] = make(chan int) go worker(i, channels[i]) } // 分别往10个channel内写入数据 for i := 0; i < 10; i++ { channels[i] <- 'a' + i } time.Sleep(time.Millisecond)}func main() { chanDemo()}
执行结果如下:
以上是内存溢出为你收集整理的GO channel的基础使用全部内容,希望文章能够帮你解决GO channel的基础使用所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)