在Python中,multiprocessing
模塊可用於並行運行一系列值的函數。例如,這會產生f的前100000個評估列表。Python多處理函數,具有多個輸入
def f(i):
return i * i
def main():
import multiprocessing
pool = multiprocessing.Pool(2)
ans = pool.map(f, range(100000))
return ans
當f需要多個輸入但只有一個變量變化時,可以做類似的事情嗎?例如,你會如何並行的:
def f(i, n):
return i * i + 2*n
def main():
ans = []
for i in range(100000):
ans.append(f(i, 20))
return ans
Thils將* not *與多處理映射一起工作,因爲它不支持不可導入的函數(使用pickle工具) – Lagerbaer 2013-05-22 19:30:27