python併發程式設計-程序池一
阿新 • • 發佈:2018-12-20
# 為什麼會有程序池的概念 # 效率 # 每開啟程序,開啟屬於這個程序的記憶體空間 # 暫存器 堆疊 檔案 # 程序過多 作業系統的排程 # 程序池 # python中的 先建立一個屬於程序的池子 # 這個池子指定能存放n個程序 # 先講這些程序建立好 # 更高階的程序池 # n,m # 3 三個程序 # + 程序 # 20 20個 import time from multiprocessing import Pool,Process def func(n): for i in range(10): print(n+1) def func2(n): for i in range(10): print(n+2) if __name__ == '__main__': start = time.time() pool = Pool(5) # 5個程序 pool.map(func,range(100)) # 100個任務 pool.map(func2,[('alex',1),'egon']) # 100個任務 t1 = time.time() - start start = time.time() p_lst = [] for i in range(100): p = Process(target=func,args=(i,)) p_lst.append(p) p.start() for p in p_lst :p.join() t2 = time.time() - start print(t1,t2)