为了账号安全,请及时绑定邮箱和手机立即绑定

goroutine通道-send语句的值

goroutine通道-send语句的值

Go
慕侠2389804 2021-05-01 16:08:48
当我尝试打印时:fmt.Println(c <-x)在下面的代码块中的for循环之前,查看“ c <-x”的计算结果,它得到了错误消息:./select.go:7:发送语句c <-x用作值;使用select进行非阻塞发送如果发送操作成功,“ c <-x”的评估结果是否为true?以及为什么Go只允许您在select语句内的case语句内使用send语句的值(即“ c <-x”的值)?    func fibonacci(c, quit chan int) {        x, y := 1, 1        for {            select {            case c <- x:                x, y = y, x + y            case <-quit:                fmt.Println("quit")                return            }        }    }谢谢
查看完整描述

1 回答

  • 1 回答
  • 0 关注
  • 187 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信