美文网首页
关闭channel

关闭channel

作者: 测试探索 | 来源:发表于2020-08-18 06:11 被阅读0次
package main

import "fmt"

func main() {

    ch := make(chan int) //创建一个无缓存的channel

    //  新建一个goroutine
    go func() {
        for i := 0; i < 5; i++ {
            ch <- i  //往通道里写数据
        }

    //  不需要再写数据时,关闭channel
        close(ch)
    }()

    for {
    //  如果ok为true,说明管道没有关闭
        if num,ok := <-ch ;ok ==true{
            fmt.Println("num = ",num)
        }else{
        //  管道关闭
            break
        }
    }
}

#结果
num =  0
num =  1
num =  2
num =  3
num =  4

相关文章

网友评论

      本文标题:关闭channel

      本文链接:https://www.haomeiwen.com/subject/psvsdktx.html