Go语言并发编程
Goroutine基础
Goroutine是Go语言的轻量级线程,使用go
关键字启动。
// 启动一个goroutine func sayHello() { fmt.Println("Hello from goroutine") } go sayHello() // 主协程等待 fmt.Println("main end") // 实际开发中常用sync.WaitGroup等待所有goroutine结束
- Goroutine非常轻量,数万个也不会崩溃。
- 主协程退出会导致所有goroutine退出。