2016-05-11 3 views
1

マルチプロセッサモジュールの2つのプロセス(プロデューサとコンシューマを考える)を生成する必要があるlinuxデーモン(pythonモジュールpython-daemonをベースにしています) O(プロデューサは入力ストリームから読み込み、コンシューマはPythonリクエストを使ってデータをアップロードします)。 pythonのドキュメント(https://docs.python.org/2/library/multiprocessing.html)によると、デーモンプロセスは子プロセスを開始できません。これをどうすれば処理できますか?このアプローチの文書や例はありますか? Pls。助言する。Pythonで書かれたlinuxデーモンでのマルチプロセッシング

コンテキスト: スレッドモジュールを使用しようとしました。しかし、GILの問題のために、消費者はめったに実行する機会を得ません。私はまた、竜巻と地獄を調べました。しかし、それは多くのコードを書き直す必要があります。

答えて

3

私はここに混乱があると思います。ドキュメントは、あなたがデーモンとしてPythonから作成されたプロセスをマークした場合にのみ、サブプロセスを作成することはできません。しかし、あなたのpython-daemonは普通のlinuxデーモンです。

linuxデーモン - バックグラウンドで実行中のプロセス。 (pythonデーモンライブラリはそのようなプロセスを作成します)、サブプロセスを持つことができます

マルチプロセスライブラリから作成されたデーモンプロセスは、サブプロセスを作成できません。

+0

これはうまくいきました。ありがとうございました! – tagsense

関連する問題