chv
:=
make
(
chan
int
,
1
)
for {
select {
case chv <- 0:
case chv <- 1:
}
i := <-chv
fmt.Println("Value received:", i)
}
这个段代码随机输出1,0,为什么?
因为select在选择case分支时,如果有多个case都满足执行条件,那么会随机公平的选择一个case去执行。
所以,具有一定的随机性。