go语言中goroutine池
生活随笔
收集整理的這篇文章主要介紹了
go语言中goroutine池
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
創(chuàng)建三個(gè)goroutine,創(chuàng)建5個(gè)任務(wù),用三個(gè)goroutine干5個(gè)任務(wù)
package mainimport ("fmt""time" )func worker(id int, jobs <-chan int, results chan<- int) {for j := range jobs {fmt.Printf("worker:%d start job:%d\n", id, j)time.Sleep(time.Second)fmt.Printf("worker:%d end job:%d\n", id, j)results <- j * 2} }func main() {jobs := make(chan int, 100)results := make(chan int, 100)// 開啟3個(gè)goroutinefor w := 1; w <= 3; w++ {go worker(w, jobs, results)}// 創(chuàng)建5個(gè)任務(wù)for j := 1; j <= 5; j++ {jobs <- j}close(jobs)// 輸出結(jié)果for a := 1; a <= 5; a++ {<- results} }總結(jié)
以上是生活随笔為你收集整理的go语言中goroutine池的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 软件测试——0319作业
- 下一篇: 【计算机组成原理】控制器