2017-10-20 11 views
0

Python websocket-clientとmultiprocessing.Poolを使用すると、websocket-clientの3つのインスタンスをそれぞれ別のURLに接続し、3つの別々の辞書に書き込むことができます。Python websocket-clientマルチスレッドの使用

私の目標は、更新されると3つの辞書すべてからデータを読み込むことができる4番目のプロセスを実行することです。

これらのプロセス間でデータを共有する最良の方法は何ですか?

私はmultiprocessing examplesを見てきましたが、websocket.WebSocketAppは、(on_message)を呼び出す関数名を含むパラメータを受け取り、追加のカスタムパラメータを受け入れないため、on_message関数が可能であるとはっきりしませんValueまたはパイプなどのインスタンスが渡されます。

答えて

0

マルチプロセッシングはデータを共有しないため、ある種のデータベースを使用する必要があります。

私はgeventとgevent-websocketライブラリを使用します。

https://pypi.python.org/pypi/gevent-websocket/

あなたは2つのオプションがあり、あなたはちょうどあなたが非同期的に好きなだけを実行することもできますし、実際にお互いに話をすることができるという付加的な利点とあなたのためのgeventをmultiprocesses GIPCモジュールを使用することができますリードライトパイプを介して。

https://gehrcke.de/gipc/

関連する問題