如果有一个大循环,里面每一个都开启groutine,那么瞬间就会开启非常多的groutine,要解决这个问题就要用channel的阻塞特性来解决

package main

import "time"

import "fmt"

func main() {
control := make(chan interface{}, )
for i := ; i <= ; i++ {
control <- i //这里应该放上面,如果放下面就会每次都执行三个了
go func(j int) {
fmt.Printf("go func: %d, time: %d\n", j, time.Now().Unix())
time.Sleep(time.Second)
<-control
}(i) }
//主groutine不要断
for {
time.Sleep(time.Second)
}
}
go func: , time:
go func: , time:
go func: , time:
go func: , time:
go func: , time:
go func: , time:
go func: , time:
go func: , time:
go func: , time:
go func: , time:

看时间每次只是同时执行两个

最新文章

  1. Hadoop学习路线图
  2. 使用yum来安装或卸载CentOS图形界面包
  3. Python大数据依赖包安装
  4. UVa 400 Unix Is
  5. 开始使用版本控制,局域网搭个SVN
  6. Oracle 中单引号和双引号的区别
  7. python中telnetlib模块的使用
  8. iptables-过滤61开头的ip数据包
  9. Unity Tiny &amp; ECS 学习笔记
  10. 使用PHP中的ajax做登录页面、验证用户名是否可用、动态调用数据库
  11. gm图片处理器:The gm/convert binaries can&#39;t be found
  12. Schema、API Schema与MFn
  13. medir设置
  14. 转载 [ZooKeeper.net] 3 ZooKeeper的分布式锁
  15. 使用 alt_disk_copy 克隆 rootvg
  16. EF实现主从表自动生成主键保存
  17. 每天一个linux命令(性能、优化):【转载】iostat命令
  18. Jquery 实现轮播图
  19. HDU 1198 Farm Irrigation(并查集+位运算)
  20. IIC接口总线

热门文章

  1. python获取指定文件夹下的文件和文件夹
  2. pymysql连接
  3. CSS .css边框属性(border)
  4. 10g+: Transportable Tablespaces Across Different Platforms (Doc ID 243304.1)
  5. 利用webpack打包自己的第一个Vue组件库
  6. Python 定时任务的实现方式
  7. SQL注入神器———Sqlmap!
  8. macOS 10.15 开启 HiDPI
  9. SQL Server 移位运算符
  10. 基于SincNet的原始波形说话人识别