2013-12-19 35 views
0

我正在使用帶有pubsub的高速公路websocket。autobahn websocket pubsub在while循環中發佈

我有獲取數據,並收集它,並把它的話題在Redis的

然後我要聽新郵件,然後發佈到與高速公路發佈訂閱主題的服務。 它功能正常,當功能退出,但當我把它放在一個for循環(不斷地聽新的redis消息)它不發佈任何東西

我認爲它是因爲這是阻止反應堆實際發佈的數據。 Iv試圖尋找deferToThread,但沒有奏效。

我想知道有沒有人知道我基本上可以在高速公路主題的while循環中發佈數據。

感謝

回答

1

您可以連接到Redis的在後臺線程阻塞循環,deferToThread是做,在扭曲的,但只是故事的一半一種方法:另一半使用callFromThread調入在主線程上運行Autobahn的發佈/調度。

你可以在這裏閱讀更多:http://twistedmatrix.com/documents/13.2.0/core/howto/threading.html

+0

發佈必須是在一個循環爲好,因爲我需要每次發佈一個新的味精從Redis的 – Joshi

+0

當然用武之地。在你以前用'deferToThread'開始的循環中使用'callFromThread'。 – oberstet

+0

工作。謝謝! – Joshi