一道go面试题,热乎的

  1. 先看这个程序会不会报错?
  2. select一定是顺序执行吗?这个程序启动后会出现几种结果?

在这里插入图片描述

程序运行会出现俩种结果

  1. Panic: case data <- 1 尝试向已关闭的通道发送数据,这会导致 panic。

  2. 打印 “2”: 如果随机选择了 case <-shutdown,程序会打印 “2”。从已关闭的通道接收数据会立即返回该类型的零值(对于 struct{},就是空结构体)。

  3. 不会打印 “3”: 因为至少有一个 case 是可执行的(<-shutdown),所以不会执行 default 分支。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

JavaPub-rodert

谢谢老板

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值