Go 协程 在执行上来说是轻量级的线程。

golang使用协程用go关键字。后边正常调用函数。

Example:

package main

import "fmt"

func ak(str string){
for i:=0; i<3; i++{
fmt.Println(str, ":", i)
}
} //协程main中要注意,协程还没执行完main就退出了。
//换句话说就是main没有等待所有goroutine结束即退出。
func main(){
ak("direct") go ak("goroutine")
go ak("sk") //go异步运行,这里用Scanln等待,需要退出时,要工按键退出。
var input string
fmt.Scanln(&input)
fmt.Println("done") }

Result:

$ go run example.go
direct : 0
direct : 1
direct : 2
goroutine : 0
sk : 0
sk : 1
sk : 2
goroutine : 1
goroutine : 2

从结果可以看出,direct是阻塞输出。goroutine和sk是异步交替输出。

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

最新文章

  1. php静态缓存简单制作
  2. 《Qt Quick 4小时入门》学习笔记3
  3. ae arcgis engine 关于面转线的方法和注意事项
  4. js总结-面向对象编程,DOM,BOM
  5. 技术文档--volley 框架
  6. [ZZ] C++ pair
  7. PHP开发框架[流行度排名]
  8. HTML5 JS API 本地存储LocalStorage基本操作
  9. MVVM模式应用 之xml文件的读取
  10. searchbar的使用介绍
  11. shell脚本定义输出字符颜色
  12. oracle增加表空间大小
  13. HOG feature
  14. win 停止tomcat
  15. WPF 中 TextBlock 文本换行与行间距
  16. [NL系列] RNN &amp; LSTM 网络结构及应用
  17. #优化:Nginx防御DDOS和CC攻击
  18. AsmTools
  19. java的时间
  20. LeNet 分类 FashionMNIST

热门文章

  1. robotframework
  2. IT路上可能遇到的小需求资源汇总
  3. Flutter pubspec.yaml配置文件
  4. 牛客网NOIP赛前集训营-提高组(第七场)A-中国式家长 2
  5. Cytoscape软件简介
  6. navicat12过期问题,Windows平台。
  7. session应用:
  8. JS谷歌浏览器断点调试
  9. DZY Loves Math
  10. Navicat for Mysql 连接报错1251[已解决]