首页  

GO多线程异步处理实例     所属分类 go 浏览量 296
goroutine  函数并发执行
go关键字
main函数本身也运行在一个goroutine中
go functionxxx  创建一个新的goroutine,并在这个新的goroutine中执行这个函数



package main

import (
"fmt"
"time"
)

func IsReady(what string, seconds int64) { 
    time.Sleep(time.Duration(seconds)*time.Second); 
    fmt.Println(what, "is ready",time.Now()) 
} 

func main() {
  go IsReady("tea", 3); 
  go IsReady("coffee", 1); 
  fmt.Println("I'm waiting....",time.Now());
  // sleep , 避免 main goroutine 结束而退出
  time.Sleep(time.Duration(5)*time.Second); 
  fmt.Println("exit",time.Now());
  
}

完整代码
https://gitee.com/dyyx/hellocode/blob/master/web/tech/go/demo/threaddemo.go

上一篇     下一篇
go程序设计语言01_06入门之并发获取多个URL

GO箴言 goproverbs

简洁的GO语言

go channel 实例

godoc安装

GO自定义模块实例