1. 程式人生 > 其它 >Python多程序之構建程序池

Python多程序之構建程序池

技術標籤:Pythonpython多程序

# 減少資源消耗,使資源複用
import multiprocessing
import time

def square(data):
    time.sleep(1)
    result=data*data
    return result

if __name__ == '__main__':
    inputs=list(range(100))
    s=time.time()
    pool=multiprocessing.Pool(processes=4)  # 池子中存在四個程序
    # map把任務交給程序池,inputs裡面的引數挨個送給square函式
    pool_outputs=pool.map(square,inputs)
    # 執行一個任務(只有一個引數時)
    # pool_outputs=pool.apply(square,args=(15,))
    pool.close()    # 關閉程序池
    pool.join() # 堵塞程序,所有程序執行完畢再向下執行
    e=time.time()
    print('Pool:',pool_outputs)
    print("共耗時{}秒".format(e-s))