登录
首页 >  Golang >  Go问答

"在Go语言中,channel1 <- <-channel2"的功能是什么?"

来源:stackoverflow

时间:2024-03-26 08:03:30 228浏览 收藏

在 Go 语言的并发模式中,`channel1

问题内容

在并发 go 模式 (https://www.youtube.com/watch?v=f6kdp27tyzs) 中,有一个代码示例,如下所示:

func fanIn(in1 <-chan string) <-chan string {
    c:=make(chan string)
    go func() { 
        for {
            c <- <-in1 
        } 
    }() 
    return c
}

对我来说,这看起来很奇怪 c <- <-in1。这是什么意思?


解决方案


c <- <-in1 代表:

in1Val := <-in1 // read from channel in1
c <- in1Val // write the value from in1 channel to `c` channel

如果您第一次编写此类代码 - 使用更多详细的代码可以更好地理解会发生什么。

以上就是本文的全部内容了,是否有顺利帮助你解决问题?若是能给你带来学习上的帮助,请大家多多支持golang学习网!更多关于Golang的相关知识,也可关注golang学习网公众号。

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>