它使用 golang 的 channel 。 以下代码如何使st2正常显示:
package main
import (
"fmt"
"github.com/OpinionatedGeek/go-bittrex"
)
func main() {
bt := bittrex.New("", "")
ch := make(chan bittrex.ExchangeState, 16)
go func() {
for st := range ch1 {
fmt.Println("Message:", st)
}
for st2 := range ch2 {
fmt.Println("Message:", st2)
}
}()
bt1.SubscribeExchangeUpdate("BTC-NEO", ch1, nil)
bt2.SubscribeExchangeUpdate("BTC-ETC", ch2, nil)
这里的问题是: 它只有 BTC-NEO 工作。看起来 BTC-ETC 只是被忽略了。 如何同时订阅?
引用链接位于: https://github.com/OpinionatedGeek/go-bittrex/blob/master/ws.go
最佳答案
您可以使用 select
语句在单个 gouroutine 中等待多个 channel :https://play.golang.com/p/1PUfSyG0HHZ
更多链接:
关于go - 如何在 Golang 中订阅多个 channel ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49237092/