gpt4 book ai didi

go - 如何将特定 channel 分配给空接口(interface) channel

转载 作者:行者123 更新时间:2023-12-01 22:44:09 25 4
gpt4 key购买 nike

如果我有一个空的接口(interface) channel 类型,我只想监视事件,并且想根据需要为其分配特定的 channel ,那么在 Golang 中是否可行?

myChan := make(chan interface{})
confirms := ch.NotifyPublish(make(chan amqp.Confirmation, 1))
myChan = confirms // (<- cannot use type chan Confirmation in type chan interface{} assignment

最佳答案

您可以将 channel 本身作为空接口(interface)传递,然后在另一端解析它。

confirms := ch.NotifyPublish(make(chan amqp.Confirmation, 1))
var mychanpointerpointer interface{}
mychanpointerpointer = confirms
.
.
.
switch mychanpointer := mychanpointerpointer.(type) {
case chan amqp.Confirmation:
fmt.Println("GOT A CONFIRMATION CHANNEL:", mychanpointer)
}
输出: GOT A CONFIRMATION CHANNEL: 0xc42016a000

关于go - 如何将特定 channel 分配给空接口(interface) channel ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63037964/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com