我有這個代碼,// The prime sieve: Daisy-chain Filter processes.func main() { ch := make(chan int) // Create a new channel. go Generate(ch) // Launch Generate goroutine. for i := 0; i < 10; i++ { prime := <-ch print(prime, "\n") ch1 := make(chan int) go Filter(ch, ch1, prime) ch = ch1 }}我想了解頻道分配是什么意思。例如ch=ch1,這是做什么的?深拷貝還是淺拷貝?這有什么保證?
1 回答

湖上湖
TA貢獻2003條經驗 獲得超2個贊
通道是一種引用類型。請參閱“通道是否通過引用隱式傳遞”。
(參考類型:切片、映射、通道、指針、函數)
并參見“ Go - Pointer to map ”。
ch = ch1
只需復制ch1
to的參考值ch
。
- 1 回答
- 0 關注
- 182 瀏覽
添加回答
舉報
0/150
提交
取消