为了账号安全,请及时绑定邮箱和手机立即绑定

对于回调,将通道作为数据通过其他通道传递

对于回调,将通道作为数据通过其他通道传递

Go
守着星空守着你 2022-04-20 19:27:05
我正在尝试将通道作为成员包含到结构中。当一个启动器通过通道将结构的实例传递给不同的 goroutine 时(将同时有多个启动器),该结构的实例将被逐步处理。通道成员将用作回调,将每个步骤的结果返回给发起者。那么,通过其他渠道将渠道作为数据传递是一种好习惯吗?我应该改用频道的指针吗?有没有其他款式推荐?=================一些额外的想法==============比较有一个全局同步。映射启动器到回调通道以供每个 goroutines 查找,我真的应该通过通道发送回调通道吗?
查看完整描述

1 回答

?
猛跑小猪

TA贡献1858条经验 获得超8个赞

这不是一个坏习惯。将一个通道通过另一个通道并使用它来收集结果是完全可以的。

请注意,您所描述的并不完全是回调,因为 go 例程不调用任何东西。它只是在通过通道传输的通道中写入数据。

如果您在通道中传递了一个函数并且 go 例程会调用它,那么您将有一个回调。


查看完整回答
反对 回复 2022-04-20
  • 1 回答
  • 0 关注
  • 78 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信