七叶笔记 » golang编程 » Golang并发编程,1、创建1个协程

Golang并发编程,1、创建1个协程

goroutine是Go并行设计的核心,作为Go中最基本的执行单元,goroutine比thread更易用、更高效、更轻便,消耗内存相比较线程更小。

使用goroutine的方法是:在函数调用前使用关键字go,创建1个并发任务单元,也就创建了1个并发任务。

什么时候需要使用goroutine?

1、业务逻辑需要并发

2、性能优化需要并发

案例:

张三一边 跑步 一边 听歌

那么把大象装冰箱有以下3步:

1、创建1个正在跑步的函数

 func Task1() {
   n := 0
   for {
      n++
      fmt.Printf("我正在跑步。。。%v\n", n)
      time.Sleep(time.Second * 3)
   }
}  

2、创建1个正在听歌的函数

 func Task2() {
   n := 0
   for {
      n++
      fmt.Printf("我正在听歌。。。%v\n", n)
      time.Sleep(time.Second * 2)
   }
}  

3、使用go关键字,调用Task1和Task2函数,这里使用了select {},目的是阻塞。

 func main() {
go Task1()
go Task2()
select {}
}  

代码截图

执行结果

相关文章