你能通过编程确定一个值的发送者从接收者的下行通道吗?

假设我有一个缓冲通道,不同的函数{A,B,C和D}在不同的时间向该通道发送值。现在,如果我从通道中读到一个通知,有没有办法确定它来自哪个发送者?从逻辑上讲,我会假设没有,但我对通道内部的理解还不够,还不知道有什么可能?

如果这个通道可能是一个无缓冲通道,你能不能找到相应的发送者,因为如果你收到一个值,你不能继续前进,直到有一个发送者在那个确切的时间发送。

唯一的办法是确定加载delve,看看当时所有正在运行的goroutine,或者在每次向通道发送前放上日志语句?

谢谢你

解决方案:

不可能告诉你从通道中接收到的值是谁发送的。

但如果你需要的话,很容易实现。只要把值和发送者ID包在一个结构体中,然后修改发送者在通道上发送一个结构体的值,填上发送者ID就可以了。

给TA打赏
共{{data.count}}人
人已打赏
未分类

如何将Twitter api与mule集成

2022-9-9 2:34:17

未分类

k8s PodSecurityPolicy的舵手模板。

2022-9-9 2:34:19

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索