Golang中国

package main

import (
“fmt”
“math/rand”
)

func test(ch chan int) {
ch <- rand.Int() //向channel中写入一个64位的随机数
close(ch)
}

func main() {
chs := make([]chan int, 10) //直接创建10个的int类型通道的切片
for i := 0; i < 10; i++ {
go test(chs[i])
}
for _, ch := range chs {
value := <-ch //阻塞等待退出信号
fmt.Println(value)
}
}

2 回复
joe9i0
#1 joe9i0 • 2017-03-17 14:52

切片初始化了, 切片里面的channel没有初始化

mike51
#2 mike51 • 2017-03-17 16:20

多谢

需要 登录 后方可回复, 如果你还没有账号你可以 注册 一个帐号。