我有一个使用通道数组的任务.
我不明白.为什么这不起作用?
package main import "fmt" func run() { chann[0] <- 1 } var chann = make([]chan int,2) func main() { go run() obj := <- chann[0] fmt.Println(obj) }
解决方法
您已初始化通道数组,但不是通道本身.至于它为何陷入僵局;这是因为尚未初始化或已设置为nil的通道值将始终阻止. (见这article)