Go 转到音频播放操作的频道。最佳设计模式?

Go 转到音频播放操作的频道。最佳设计模式?,go,Go,我正在考虑开发另一个可视化编程环境,在操作节点之间发送数据。我可以将go通道视为传输数据的可行方法,但我听说很多时候go通道在大多数应用程序中被过度使用或不必要 以下是Max MSP的一个示例,它与我的音频操作目标类似: 虚线是波浪数据,而滑动线是单值 因此,在我的应用程序中,我想知道go频道是否适用于此,或者我是否应该设计自己的数据传输和操作系统?很难说您打算如何处理该视频中的频道。您正在尝试通过通道传输字节吗?你有一个你尝试过的例子吗?通道是在Goroutine之间共享数据的一个很好的工具,

我正在考虑开发另一个可视化编程环境,在操作节点之间发送数据。我可以将go通道视为传输数据的可行方法,但我听说很多时候go通道在大多数应用程序中被过度使用或不必要

以下是Max MSP的一个示例,它与我的音频操作目标类似:

虚线是波浪数据,而滑动线是单值


因此,在我的应用程序中,我想知道go频道是否适用于此,或者我是否应该设计自己的数据传输和操作系统?

很难说您打算如何处理该视频中的频道。您正在尝试通过通道传输字节吗?你有一个你尝试过的例子吗?通道是在Goroutine之间共享数据的一个很好的工具,不管数据是什么类型的,都有一种或多种合适的格式供你使用。
[]字节
数组当然是一个选项。“我听说很多次围棋频道被过度使用或不必要”——我自己从未见过。我的经历正好相反。大多数人使用WaITs来管理GORTEOTIN,而不是通道,编写他们的并发代码就像是C++或其他东西,而不是使用信道。@ JIMB我的想法是基于模块的节点共享信息,所以IF块可能是这样的:GO团队成员Andrew Gerrand在GO中编写了一个合成器,所以他的东西可能很有趣:我的直觉是,你可能不需要通道,因为如果你优化最昂贵的操作(例如),一次使用块(“帧”)(例如,几毫秒,而不是一个样本),你可能可以用一个CPU做你需要做的事情,并在帧之间重用缓冲区,而不是每次分配新的缓冲区。