1. 程式人生 > >python 進程池的簡單使用方法

python 進程池的簡單使用方法

join 使用方法 from 電腦 數字 sin end imp 結束

回到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 進程池的簡單使用方法