[Go] Go语言中关闭带缓冲区的频道 →→→→→进入此内容的聊天室

来自 , 2021-01-13, 写在 Go, 查看 147 次.
URL http://www.code666.cn/view/b64a7076
  1. package main
  2.  
  3. import "fmt"
  4.  
  5. func main() {
  6.     input := make(chan int, 10)
  7.     wait  := make(chan int)
  8.    
  9.     for i := 0; i < 10; i ++ {
  10.         input <- i
  11.     }
  12.    
  13.     close(input)
  14.    
  15.     go func() {
  16.         for {
  17.             if i, ok := <- input; ok {
  18.                 fmt.Println(i)
  19.             } else {
  20.                 break
  21.             }
  22.         }
  23.         wait <- 1
  24.     }()
  25.    
  26.     <-wait
  27. }
  28.  
  29.  
  30.  
  31. //go/4425

回复 "Go语言中关闭带缓冲区的频道"

这儿你可以回复上面这条便签

captcha