02 5多程序 程序池

2021-09-30 00:09:06 字數 732 閱讀 8981

# -*- coding: utf-8 -*-

import time,random

from multiprocessing import pool

defworker

(msg)

: t_start = time.time(

)print

("---%s開始執行---"

% msg)

# random.random()隨機生成0-1之間的浮點數

time.sleep(random.random())

t_stop = time.time(

)print

(msg,

"執行完畢,耗時 %0.2f"

%(t_stop-t_start)

)# 建立乙個程序池,最大程序數是 3

po = pool(3)

for i in

range(0

,10):

# 每次迴圈將會用空閒的子程序去呼叫目標

(i,)

)print

("----start----"

)po.close(

)# 關閉程序池,關閉後po不在接收新的請求

po.join(

)# 主程序 等待所有的 po子程序 執行完畢,必須放在close()之後

print

('----end----'

)

python多程序之程序池

在利用python進行系統管理的時候,特別是同時操作多個檔案目錄,或者遠端控制多台主機,並行操作可以節約大量的時間。當被操作物件數目不大時,可以直接利用multiprocessing中的process動態成生多個程序,十幾個還好,但如果是上百個,上千個目標,手動的去限制程序數量卻又太過繁瑣,此時可以...

python 多程序 高階 程序池

如果需要啟動大量的子程序,使用程序池批量建立子程序的方式更加常見,因為當被操作對物件數目不大時,可以直接利用multiprocessing中的process動態生成多個程序,如果數量大,此時就應該使用pool。pool 可以提供指定數量的程序供使用者呼叫,預設大小是cpu的核數。當有新的請求提交到p...

Python多程序 程序池pool

from multiprocessing import process,pool import time defselect time.sleep 1 print time.ctime return 這是每個進行執行完後返回的值,該值會會被 callback函式接收 def foo args pri...