向两个通道发送数据时,第二个通道可能会在某个时候首先接收数据 主程序包 func m(){ c1:=制造(成交量,1) c2:=制造(内部通道,1) go func(){ c1
当我们将两个发送操作放在goroutine中时,它们可能在不同的线程中运行?所以我们不能保证按顺序读取它们?向两个通道发送数据时,第二个通道可能会在某个时候首先接收数据 主程序包 func m(){ c1:=制造(成交量,1) c2:=制造(内部通道,1) go func(){ c1,go,Go,当我们将两个发送操作放在goroutine中时,它们可能在不同的线程中运行?所以我们不能保证按顺序读取它们? package main func m() { c1 := make(chan int, 1) c2 := make(chan int, 1) go func() { c1 <- 1 c2 <- 1 }() select { case <-c1: case <-c2:
package main
func m() {
c1 := make(chan int, 1)
c2 := make(chan int, 1)
go func() {
c1 <- 1
c2 <- 1
}()
select {
case <-c1:
case <-c2:
println("no way")
}
}
func main() {
for i := 0; i < 1000000; i++ {
m()
}
}