教程集 www.jiaochengji.com
教程集 >  Golang编程  >  golang教程  >  正文 GO chan 编程

GO chan 编程

发布时间:2022-01-18   编辑:jiaochengji.com
教程集为您提供GO chan 编程等资源,欢迎您收藏本站,我们将为您提供最新的GO chan 编程资源
<pre><code class="lang-go hljs">package main import ( "fmt" "math/rand" "sync" ) func main() { numberChan1 := make(chan int64, 3) numberChan2 := make(chan int64, 3) numberChan3 := make(chan int64, 3) var waitGroup sync.WaitGroup waitGroup.Add(3) go func() { for n := range numberChan1 { if n%2 == 0 { numberChan2 <- n } else { fmt.Printf("Filter %d. [filter 2]\n", n) } } close(numberChan2) waitGroup.Done() }() go func() { for n := range numberChan2 { if n%5 == 0 { numberChan3 <- n } else { fmt.Printf("Filter %d. [filter 5]\n", n) } } close(numberChan3) waitGroup.Done() }() go func() { for n := range numberChan3 { fmt.Println("n = ", n) } waitGroup.Done() }() for i := 0; i < 100; i { numberChan1 <- rand.Int63n(100) } close(numberChan1) waitGroup.Wait() } </code></code></pre>

 


到此这篇关于“GO chan 编程”的文章就介绍到这了,更多文章或继续浏览下面的相关文章,希望大家以后多多支持JQ教程网!

您可能感兴趣的文章:
GO chan 编程
go语言并发编程
Go并发编程——channel
Golang channel 使用指南
Golang并发以及通道的使用
golang 面试题(三)管道chan
22Go常见的并发模式和并发模型
golang学习笔记(二)—— 深入golang中的协程
channel实战应用,这篇就够了!
Golang号称高并发,但高并发时性能不高解决办法

[关闭]
~ ~