0
我想爲類方法使用多處理。我從answer中發現,Pool
在multiprocessing
中不能直接使用類方法,但是通過在類之外定義一個函數並向該函數添加一個附加參數(類似的建議也在此blog上) 。因此,我試圖通過以下簡單的程序來實現這一點,其中MyClass
我想平行fun
。但是,我沒有得到任何結果(沒有錯誤)。看來我錯過了一些東西,但我覺得我快到了!任何修復都非常感謝。用於類方法的多處理
import multiprocessing
class MyClass:
def __init__(self):
pass
def fun(self, myList):
print myList
def unwrap_fun(obj, myList):
return obj.fun(myList)
obj = MyClass()
mlp = multiprocessing.Pool(processes=multiprocessing.cpu_count())
mlp.imap_unordered(unwrap_fun, (obj, range(1, 10)))
非常感謝。 – Medo