如果我在兩個頻道上進行選擇:for { select { case <-chan1: // do something case <-chan2: // do something else }}在一個單獨的 goroutine 中,我依次寫入這些通道:chan1 <- "blah"chan2 <- true我能保證在“做其他事情”之前看到“做某事”嗎?我知道如果 select 有兩個未阻塞的通道,它會隨機選擇,但我認為如果 select 已經阻塞,寫入第一個通道可能會可靠地“中斷”寫入 goroutine,這意味著 select 將在之前未阻塞的第一個通道上運行第二次寫。
- 1 回答
- 0 關注
- 133 瀏覽
添加回答
舉報
0/150
提交
取消