前面的例子中,我们讲过 for 和 range为基本的数据结构提供了迭代的功能。我们也可以使用这个语法来遍历从通道中取得的值

Example:

package main
import "fmt" //这个例子也让我们看到,一个非空的通道也是可以关闭的
//但是通道中剩下的值仍然可以被接收到。
func main() {
jobs := make(chan string, 2)
jobs <- "one"
jobs <- "two" //这个 range 迭代从 queue 中得到的每个值。因为我们在前面 close 了这个通道,
//这个迭代会在接收完 2 个值之后结束。如果我们没有 close 它,
//我们将在这个循环中继续阻塞执行,等待接收第三个值
close(jobs)
//我们将遍历在 jobs 通道中的两个值。
for ele := range jobs{
fmt.Println(ele)
} }

Result:

$ go run example.go
one
two

坐标:上一个例子    下一个例子

最新文章

  1. Centos7 升级内核和应用TCP BBR 算法
  2. windows环境PhpStorm中简单使用PHP_CodeSniffer规范php代码
  3. aspx页面调用发送邮件验证码(结合前两篇)
  4. Geometry Surface of OpenCascade BRep
  5. php练习:给指定商品添加特殊效果
  6. yum报错: Error: Cannot retrieve metalink for repository: epel. Please verify its path and try again
  7. python(8) 自己制造异常让程序退出,把print的内容写入到文件
  8. Ubuntu系统安装配置Pintos和Bochs
  9. VS2010中编写宏添加作者信息与函数注释
  10. 将SQL获取的信息传递到Email中
  11. JavaEE XML SAX解析
  12. java实现线性表
  13. FFmpeg 2.1 试用(新版支持HEVC,VP9)
  14. Lintcode470-Tweaked Identical Binary Tree-Easy
  15. 关于C#List中FindAll用法的一些简单示例
  16. thinkphp5中使用PHPExcel(转载)
  17. C# .net WebRequest HttpWebRequest 禁用系统默认代理。
  18. 外部线程停止Java子线程的方法
  19. [svc]Linux vmstat命令实战详解
  20. Hive查看table在HDFS上的存储路径

热门文章

  1. spring boot 集成 websocket 实现消息主动推送
  2. OSS重磅推出OSS Select——使用SQL选取文件的内容
  3. 微信公众号号开发(Java)
  4. action function
  5. 数字类别生成onehot
  6. 数据生成c++程序模板
  7. MySQL server has gone away 问题解决方法
  8. 实现word在线预览 有php的写法 也有插件似
  9. python 数值系列-进制转换
  10. windowns环境下mysql 安装教程