selenium2學習:多進程技術
阿新 • • 發佈:2018-05-21
col 位置 pen ini 例子 group sleep star range
1.1 多進程技術
多進程模塊的使用與多線程的模塊使用基本類似,修改上面的例子,僅僅將threading改為multiprocessing即可。
from time import sleep, ctime import multiprocessing def player(file, time): #播放器 for i in range(2): print(‘Starting playing: %s! %s‘ % (file, ctime())) sleep(time) #播放列表及時長 lists = {‘以後的以後‘:3,‘One Day‘:2,‘阿甘正傳‘:4} #創建線程組 threads = [] for file,time in lists.items(): t = multiprocessing.Process(target=player, args =(file,time)) threads.append(t) if __name__ == ‘__main__‘: for t in range(len(lists)): threads[t].start() for t in range(len(lists)): threads[t].join()print(‘all end: %s‘ % ctime())
執行結果
Starting playing: 以後的以後! Mon May 21 17:24:02 2018 Starting playing: One Day! Mon May 21 17:24:02 2018 Starting playing: 阿甘正傳! Mon May 21 17:24:02 2018 Starting playing: One Day! Mon May 21 17:24:04 2018 Starting playing: 以後的以後! Mon May 21 17:24:05 2018 Starting playing: 阿甘正傳! Mon May21 17:24:06 2018 all end: Mon May 21 17:24:10 2018 Process finished with exit code 0
multiprocessing.Process(group=None, target=None, name=None, arge=(), kwargs={})
target表示調用的對象,args表示調用對象的位置參數元組,kwargs表示調用對象的字典,name為別名,Group實際上不適用。
selenium2學習:多進程技術