python进程数上限_python – 使用具有最大同时进程数的multipr...
使用multiprocessing.Pool可能是最明智的.Pool根據系統上可用的最大內核數量生成一個工作進程池,然后在內核可用時基本上提供任務.
from multiprocessing import Pool
def f(x):
return x*x
if __name__ == '__main__':
pool = Pool(processes=4) # start 4 worker processes
result = pool.apply_async(f, [10]) # evaluate "f(10)" asynchronously
print result.get(timeout=1) # prints "100" unless your computer is *very* slow
print pool.map(f, range(10)) # prints "[0, 1, 4,..., 81]"
并且,如果您的代碼需要,還可以使用multiprocessing.cpu_count()方法來計算給定系統上的核心數量,這也很方便.
編輯:這是一些似乎適用于您的特定情況的草稿代碼:
import multiprocessing
def f(name):
print 'hello', name
if __name__ == '__main__':
pool = multiprocessing.Pool() #use all available cores, otherwise specify the number you want as an argument
for i in xrange(0, 512):
pool.apply_async(f, args=(i,))
pool.close()
pool.join()
總結
以上是生活随笔為你收集整理的python进程数上限_python – 使用具有最大同时进程数的multipr...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: opencv 图像旋转_用Dlib和Op
- 下一篇: python mulit函数_pytho