0

我正在使用带有 pubsub 的高速公路 websocket。

我有一项服务可以获取数据并收集数据并将其放入 Redis 的主题中

然后我想收听新消息,然后使用高速公路 pubsub 发布到主题。当函数退出时它工作正常,但是当我把它放在一个 for 循环中(不断地监听新的 redis 消息)它没有发布任何东西

我认为这是因为这阻止了反应堆实际发布数据。Iv 尝试调查 deferToThread 但这不起作用。

我想知道有没有人知道我基本上可以如何在一段时间循环中将数据发布到高速公路主题。

谢谢

4

1 回答 1

1

您可以在后台线程上的阻塞循环中连接到 Redis,deferToThread这是在 Twisted 中执行此操作的一种方法,但只是故事的一半:另一半callFromThread用于调用在主线程上运行的 Autobahn 的发布/调度。

你可以在这里阅读更多:http: //twistedmatrix.com/documents/13.2.0/core/howto/threading.html

于 2013-12-19T22:29:16.710 回答