无法在函数的参数中将类型map [k] chan T用作类型map [k] <-chan T

时间:2019-12-17 00:27:15

标签: go channel

我在https://blog.golang.org/pipelines的go博客中读到,您可以将一个通道发送给函数,该函数的签名需要一个<-chan(该通道的只读版本)作为参数。我什至已经成功地将<-chan用作此处https://play.golang.org/p/5M2xV9Ps44o。但是当我在这里尝试使用它时,VS Code给我这个错误:

cannot use writeChanMap (type map[int]chan fragment) as type map[int]<-chan fragment in argument to handleTx

这是我的代码的简化版本:

// NOTE: fragment is a struct I have defined in the global scope

func handleTx(writerMap map[int]*hdlc.Writer, wChanMap map[int]<-chan fragment) {
    // do stuff
}

func main() {
    go handleTx(writerMap, writeChanMap)
    // do other stuff
}

0 个答案:

没有答案