有没有办法在 select case 语句中进行通道对分配?
在 select 语句之外,您可以执行以下操作,但它似乎不适用于 select case 语句。
var c1 = make(chan int)
var c2 = make(chan int)
a,b := <- c1, <- c2
为什么我不能执行以下操作:
var c1 = make(chan int)
var c2 = make(chan int)
go func () {
c1 <- 11111
}()
go func () {
c2 <- 22222
}()
select {
case a,b := <- c1, <- c2:
fmt.Println(a,b)
}
有什么我做错了,或者如果不形成新的聚合器渠道就不可能吗?
最终目标是轻松等待两个通道都准备好。
回首忆惘然
相关分类