首頁  >  文章  >  後端開發  >  python中進程池的簡單實作程式碼

python中進程池的簡單實作程式碼

不言
不言轉載
2018-10-08 15:26:482758瀏覽

這篇文章帶給大家的內容是關於python中進程池的簡單實作程式碼,有一定的參考價值,有需要的朋友可以參考一下,希望對你有幫助。

回到python,用一下python的進程池。

記得之前面試的時候,面試官問:你知道進程池的預設參數嗎?我沒有回答上來,後來才知道,是有預設參數的。下面就看看它的預設參數

1. 不加參數

from multiprocessing.pool import Pool
from time import sleep
def fun(a):
    sleep(5)
    print(a)

if __name__ == '__main__':
    p = Pool()      # 这里不加参数,但是进程池的默认大小,等于电脑CPU的核数
                    # 也是创建子进程的个数,也是每次打印的数字的个数
    for i in range(10):
        p.apply_async(fun, args= (i, ))
    p.close()
    p.join()        # 等待所有子进程结束,再往后执行
    print("end")

2. 加參數5

from multiprocessing.pool import Pool
from time import sleep
def fun(a):
    sleep(5)
    print(a)
if __name__ == '__main__':
    p = Pool(5)     # 最多执行5个进程,打印5个数
    for i in range(10):
        p.apply_async(fun, args= (i, ))
    p.close()
    p.join()        # 等待所有子进程结束,再往后执行
    print("end")

以上是python中進程池的簡單實作程式碼的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:cnblogs.com。如有侵權,請聯絡admin@php.cn刪除