go 使用 goroutine channel 通信
2017-08-15 23:03
525 查看
packagemain
import (
"fmt"
)
func Cnt(ch chan int) {
ch <- 1
fmt.Println("counting")
}
func main() {
chs := make([]chan int, 20)
for i := 0; i < 20; i++ {
chs[i] = make(chan int)
go Cnt(chs[i])
fmt.Println("Count", i)
}
for i, ch := range chs {
<-ch
fmt.Println("counting", i)
}
}
运行:
go run channel.go
结果:
Count 0Count 1Count 2Count 3Count 4Count 5Count 6Count 7Count 8Count 9Count 10Count 11Count 12Count 13Count 14Count 15Count 16Count 17Count 18Count 19counting 0counting 1counting 2counting 3counting 4counting 5countingcounting 6counting 7counting 8countingcountingcountingcountingcountingcountingcounting 9counting 10counting 11countingcountingcountingcounting 12counting 13counting 14counting 15counting 16countingcountingcountingcounting 17counting 18countingcountingcountingcountingcountingcounting 19
相关文章推荐
- TODO:Go语言goroutine和channel使用
- TODO:Go语言goroutine和channel使用
- go中channel简单使用
- Go-Goroutine-Channel-基础理解
- 使用Channel、Buffer、Selector完成网络通信--非阻塞(一)
- 使用Channel、Buffer、Selector完成网络通信--非阻塞(二)
- go语言之行--golang核武器goroutine调度原理、channel详解
- 【golang】go-channel-goroutine实践2
- Go之go与channel组合使用
- WebRTC实时通信系列教程6 使用RTCDataChannel传输数据
- 【golang】go-channel-goroutine实践1
- Go 并发编程基础(一)goroutine,channel
- go语言中goroutine的使用
- 使用goroutine+channel和java多线程+queue队列的方式开发各有什么优缺点?
- GO 使用channel进行同步 (缓冲channel)
- go - 关于使用 channel 时遇到的死锁问题
- 论go语言中goroutine的使用
- 关于goroutine和channel的使用和个人见解
- Go channel 使用示例代码
- go语言使用protobuf与c++做数据通信。