次のように動作させるにはどうすればよいですか?要点は、非同期にメソッドを(そして関数ではなく)実行したいということです。apply_asyncにメソッドを渡したり、Pythonマルチプロセッシングでマップすることはできますか?
from multiprocessing import Pool
class Async:
def __init__(self, pool):
self.pool = pool
self.run()
def run(self):
p.apply_async(self.f, (10,))
def f(self, x):
print x*x
if __name__ == '__main__':
p = Pool(5)
a = Async(p)
p.close()
p.join()
これは何も印刷しません。
a.run()を適切に追加します。 – Simon
実行方法を修正しました。私はこの可能な解決策を見つけました:http://stackoverflow.com/q/1816958/1545579それを試しなければなりません...多分それは...更新されます – Mahdi