Processクラスを、私がEdgeRendererと呼ぶクラスにサブクラス化しています。私はmultiprocessing.Pool
を使用したいが、通常のプロセスの代わりに、それらを私のEdgeRendererのインスタンスにしたい。可能?どうやって?Pythonマルチプロセッシング:カスタムプロセスのプール
5
A
答えて
3
:別の方法として、あなたがマッピングに使用呼び出し可能オブジェクトに機能を構築することができますこれは、現在 APIでサポートされていませんが、悪いではないでしょう
添加。 私は/ 2.6.3 3.1今週 python2.7に追加することを見てみましょう
これが動作しているようです
2
私はAPIのためのフックが表示されません。 initializer
とinitargs
引数を使用して、目的の機能を複製することができます。ジェシーNollerから
class EdgeRenderTask(object):
def op1(self,*args):
...
def op2(self,*args):
...
p = Pool(processes = 10)
e = EdgeRenderTask()
p.apply_async(e.op1,arg_list)
p.map(e.op2,arg_list)
+0
'p.map'の引数としてクラスを渡すことはできません。あなたはpickleエラーを受け取ります。私がこれを見つけた唯一の方法は、一種のカスタム 'pool.map'を実装することです。残念ながら、それはもっと多くの行を取るでしょう。 – catwalker333
2
:
import multiprocessing as mp
ctx = mp.get_context() # get the default context
class MyProcess(ctx.Process):
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
print("Hi, I'm custom a process")
ctx.Process = MyProcess # override the context's Process
def worker(x):
print(x**2)
p = ctx.Pool(4)
nums = range(10)
p.map(worker, nums)
関連する問題
- 1. マルチプロセッシングPythonプール
- 2. Python 3でのプールとマルチプロセッシングの問題
- 3. Pythonマルチプロセッシング - dictsのリストをプールに渡す
- 4. マルチプロセッシング - プールの割り当て
- 5. Pythonのマルチプロセッシング・プールは、私は、プールをマルチプロセッシングをもとに飾るを記述しようとしています
- 6. Pythonマルチプロセッシングのプールは何もしません
- 7. マルチプロセッシング(プール)の二つの引数
- 8. PythonマルチプロセッシングWindowsでプールが異常に動作する
- 9. プールのマルチプロセッシングに失敗する
- 10. Pythonのマルチプロセッシング・マネージャー
- 11. Pythonのマルチプロセッシング
- 12. Pythonのマルチプロセッシング
- 13. Pythonのマルチプロセッシング:プロセス
- 14. Pythonのマルチプロセッシングは
- 15. kafka-pythonのマルチプロセッシング
- 16. マルチプロセッシングの戻り値。マルチプロセッシングPythonのQueue()
- 17. マルチプロセッシングpythonは、プールにジョブを順次送信することが可能です
- 18. 結果オブジェクトを保持せずにPythonマルチプロセッシングを使用するプール
- 19. マネージャ、プール、共有リストを使用したPythonマルチプロセッシング同時実行性
- 20. Pythonマルチプロセッシング・ピクル・プロトコル
- 21. pythonマルチプロセッシングstarmapプログレスバー
- 22. Pythonマルチプロセッシングとイベントレット
- 23. Pythonスケルトンとマルチプロセッシング
- 24. Pythonマルチプロセッシング、パススロス
- 25. PythonマルチプロセッシングThreadPool
- 26. Pythonマルチプロセッシング出力
- 27. マルチプロセッシングとSelenium Python
- 28. Pythonマルチプロセッシング - Parrallelプロセス
- 29. マルチプロセッシングpython pymongo
- 30. Pythonマルチプロセッシングとファイルシーク
は、あなたがこの方法マルチスレッドを使用するようにコードを記述しようとしています? –
マルチ処理。 –