如何向龙卷风添加自定义事件

时间:2013-08-04 22:45:26

标签: python tornado

我有一个龙卷风应用程序,它将通过websocket提供数据。 我有一个单独的阻塞线程,它从另一个应用程序读取输入并将对象推入队列,另一个线程具有阻塞侦听器到该队列。

我想要的是读者线程以某种方式向龙卷风发送消息,只要它在队列中看到新项目,然后龙卷风就可以通过websocket将其传递给听众客户。

我能想到的唯一方法是在阅读器线程中安装websocket客户端,并通过websocket将信息推送到龙卷风。然而,似乎我应该能够在不使用websocket的情况下执行此操作,并且不知何故龙卷风侦听非websocket异步事件然后调用回调。

但是我找不到任何描述如何做到的事情。

1 个答案:

答案 0 :(得分:1)

如果我正确理解你的问题,你需要做的就是从队列中读取的线程中调用IOLoop.add_callback。这将在IOLoop的线程中运行您的回调,以便您可以在客户端websocket连接上写出您的消息。