日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

Python多進程multiprocessing、進程池用法實例分析

瀏覽:15日期:2022-08-01 13:24:23

本文實例講述了Python多進程multiprocessing、進程池用法。分享給大家供大家參考,具體如下:

內容相關:

multiprocessing:

進程的創建與運行 進程常用相關函數

進程池:

為什么要有進程池 進程池的創建與運行:串行、并行 回調函數多進程multiprocessing:

python中的多進程需要使用multiprocessing模塊

多進程的創建與運行:

1.進程的創建:進程對象=multiprocessing.Process(target=函數名,args=(參數,))【補充,由于args是一個元組,單個參數時要加“,”】

2.進程的運行: 進程對象.start()

進程的join跟線程的join一樣,意義是 “阻塞當前進程,直到調用join方法的那個進程執行完,再繼續執行當前進程”

注:在windows中代碼中必須使用這個Python多進程multiprocessing、進程池用法實例分析,在Linux 中不需要加這個

import multiprocessing,time,osdef thread_run(): print(threading.current_thread())def run(name): time.sleep(1) print('hello',name,'run in ',os.getpid(),'ppid:',os.getppid())if __name__==’__main__’:#必須加 obj=[] for i in range(10): p=multiprocessing.Process(target=run,args=(’bob’,)) obj.append(p) p.start() start_time=time.time() for i in obj: i.join() print('run in main') print('spend time :',time.time()-start_time) 與多線程同樣的:也可以通過繼承multiprocessing的Process來創建進程

繼承multiprocessing的Process類的類要主要做兩件事:

1.如果初始化自己的變量,則先要調用父類的__init__()【如果不調用,則要自己填寫相關的參數,麻煩!】然后做自己的初始化;如果不需要初始化自己的變量,那么不需要重寫__init__,直接使用父類的__init__即可【已經繼承了】

2.重寫run函數

import multiprocessingclass myProcess(multiprocessing.Process): def run(self): print('run in myProcess')if __name__=='__main__': p=myProcess() p.start() p.join()進程常用相關函數: os.getpid():獲取當前進程號。 os.getppid():獲取當前進程的父進程號。 進程對象.is_alive():判斷進程是否存活

Python多進程multiprocessing、進程池用法實例分析

進程對象.terminate():結束進程【不建議的方法,現實少用】進程池: 為什么需要進程池 如果要啟動大量的子進程,可以用進程池的方式批量創建子進程,而進程池可以限制運行的進程的數量【有太多人想要游泳,而池子的容量決定了游泳的人的數量 Pool類可以提供指定數量的進程供用戶調用,當有新的請求提交到Pool中時,如果池還沒有滿,就會創建一個新的進程來執行請求。如果進程池滿了,請求就會告知先等待,直到池中有進程結束,才會創建新的進程來執行這些請求 進程池的創建與使用: 使用進程池需要導入:from multiprocessing import Pool 創建進程池:進程池對象=Pool(容量) 給進程池添加進程: 串行:進程池對象.apply(func=函數名,args=(參數,))

from multiprocessing import Poolimport time,osdef func1(i): time.sleep(1) print('run in process:',os.getpid())if __name__=='__main__': pool=Pool(5) start_time = time.time() for i in range(10): pool.apply(func=func1,args=(i,))#串行,這里是加一個運行完再加一個 pool.close()#先close再等待 pool.join() print('main run done,spend_time:',time.time()-start_time) 并行:進程池對象.apply_async(func=函數名,args=(參數,),callback=回調函數)

from multiprocessing import Poolimport time,osdef func1(i): time.sleep(1) print('run in process:',os.getpid())if __name__=='__main__': pool=Pool(5) start_time = time.time() for i in range(10): pool.apply_async(func=func1,args=(i,))#并行 pool.close()#先close再等待 pool.join() print('main run done,spend_time:',time.time()-start_time)#2.6,證明是并行回調函數的使用:在并行中,支持callback=回調函數,當一個進程執行完畢后會調用該回調函數,并且參數為func中的返回值 注意:回調函數是在父進程中執行的!【當兒子執行完后,會在父親里調用函數】

from multiprocessing import Poolimport time,osdef func1(i): time.sleep(1) print('run in process:',os.getpid()) return 'filename'def log(arg):##參數為進程創建中func的函數的返回值 print('log done :',arg)if __name__=='__main__': pool=Pool(5) start_time = time.time() for i in range(10): pool.apply_async(func=func1,args=(i,),callback=log,)#log的參數是func1的返回值 pool.close()#先close再等待 pool.join() print('main run done,spend_time:',time.time()-start_time)

Python多進程multiprocessing、進程池用法實例分析

注:對Pool對象調用join()方法會等待所有子進程執行完畢,調用join()之前必須先調用close(),調用close()之后就不能繼續添加新的Process了。【意思就是比如游泳池只賣1個小時的票,約定5點關門,那么4點多之后就不能再賣票了,就一直等著游泳池里面的人出來再關門,進程池的close是一個關門的意思,并不是結束的意思,它只是關上了進來的門,而里面的進程還可以運行】【進程池的join是等池子里的所有進程執行完畢,如果后面再進來進程的話就沒完沒了了,所以需要先關閉進入,再等待進程結束】 Python多進程multiprocessing、進程池用法實例分析 小測試:Python多進程multiprocessing、進程池用法實例分析

更多關于Python相關內容感興趣的讀者可查看本站專題:《Python進程與線程操作技巧總結》、《Python數據結構與算法教程》、《Python函數使用技巧總結》、《Python字符串操作技巧匯總》、《Python入門與進階經典教程》、《Python+MySQL數據庫程序設計入門教程》及《Python常見數據庫操作技巧匯總》

希望本文所述對大家Python程序設計有所幫助。

標簽: Python 編程
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
99久久九九| 爽好多水快深点欧美视频| 亚洲激情av| 午夜久久美女| 国产精品免费看| 丝袜亚洲另类欧美 | 在线 亚洲欧美在线综合一区| 亚洲不卡av不卡一区二区| 国产精品久久久久av电视剧| av亚洲一区二区三区| 亚洲va中文在线播放免费| 美女免费视频一区| 高清久久精品| 欧美日韩一区二区三区视频播放| 欧美成a人国产精品高清乱码在线观看片在线观看久 | yellow在线观看网址| 国产在线观看91一区二区三区| 国产成人免费| 99久久亚洲精品| 久久中文视频| 亚洲字幕久久| 国产日韩1区| 美女毛片一区二区三区四区| 国产日韩综合| 国产欧美亚洲一区| 日韩在线观看一区| 日韩一级欧洲| 国产免费av国片精品草莓男男| 精品高清久久| 国产精品国产一区| 亚洲精品一二三区区别| 美女日韩在线中文字幕| 日本不卡中文字幕| 成人在线观看免费视频| 99视频精品全国免费| 亚洲人www| 久久99视频| 欧美精品资源| 婷婷综合福利| 91视频一区| 视频一区二区三区中文字幕| 国产精品日本一区二区不卡视频 | 久久国产免费看| 999久久久亚洲| 国产日产一区| 久久亚洲视频| 日韩精品午夜| 国产精品香蕉| 三级欧美在线一区| 国产中文欧美日韩在线| 亚洲精品乱码| 亚洲天堂一区二区| 欧美在线黄色| 伊人成人网在线看| 国产高潮在线| 91欧美精品| 日韩精品影视| 国产日韩欧美中文在线| 久久久777| 亚洲区欧美区| 91欧美国产| 三级一区在线视频先锋| 国内在线观看一区二区三区| 91九色精品| 国产精选一区| 欧美搞黄网站| 国产一精品一av一免费爽爽| 国产精品免费99久久久| 亚洲午夜久久久久久尤物 | jiujiure精品视频播放| 国产欧美日韩一区二区三区四区| 精品一级视频| 亚洲一区欧美二区| 精品一区视频| 一区二区三区国产在线| 福利视频一区| 日韩视频久久| 国产69精品久久| 亚洲午夜免费| 不卡福利视频| 日韩欧美激情电影| 蜜臀久久精品| 国产精品一区二区精品 | 日本蜜桃在线观看视频| 亚洲小说春色综合另类电影| 成人午夜在线| 视频一区中文字幕精品| 日本少妇一区| 国产欧美视频在线| 欧美成人国产| 久久精品午夜| 日韩三区四区| 亚洲少妇自拍| 97精品国产福利一区二区三区| 日韩欧美中文字幕在线视频| 日韩欧美一区二区三区在线观看| 国产日韩亚洲欧美精品| 免费视频最近日韩| 亚洲精品123区| 精品视频在线你懂得| 中文字幕av一区二区三区四区| 神马午夜在线视频| 日韩一区二区三区在线看| 91九色精品| 日本不卡免费高清视频在线| 久久99影视| 亚洲91网站| 欧美一区不卡| 日韩精品欧美大片| 亚洲精品1区| 婷婷综合亚洲| 色天使综合视频| 国际精品欧美精品| 国产欧美精品| 欧美日韩 国产精品| 99精品视频精品精品视频| 成人国产精品久久| 精品视频久久| 国产美女精品视频免费播放软件| 免费成人在线视频观看| 美女少妇全过程你懂的久久| 日本久久成人网| 中文字幕人成乱码在线观看| 91欧美国产| 日韩网站在线| 国产一区清纯| 99国产精品一区二区| 亚洲香蕉网站| 欧美日韩激情| 国产字幕视频一区二区| 中文字幕在线视频久| 黑森林国产精品av| 日韩在线二区| 日韩在线播放一区二区| 日韩视频一区| 中文字幕日本一区二区| 日韩中文字幕视频网| 日韩欧美中文在线观看| 日韩一区中文| 国产伦精品一区二区三区视频| 国产精品亚洲欧美| 国产精品成人一区二区网站软件| 美女视频网站久久| 欧美精品第一区| 日产精品一区二区| 国产传媒在线观看| 蜜桃tv一区二区三区| 视频一区欧美精品| 欧美久久精品| 成人高清一区| 国产精品久久久久久久久久白浆 | 福利一区二区| 91精品一区二区三区综合在线爱| 亚洲天堂免费电影| 日韩一区欧美二区| 青青草91久久久久久久久| 久久永久免费| av亚洲一区二区三区| 日韩视频在线一区二区三区| 亚洲精品日本| 欧美激情一区| 97精品一区| 亚州精品视频| 91精品视频一区二区| 国语精品一区| 亚洲欧洲另类| 欧美中文一区| av综合电影网站| 日韩影院免费视频| 精品中文在线| 久久久久免费av| 久久精品人人| 国产毛片久久| 美女久久99| 免费视频久久| 老鸭窝一区二区久久精品| 久久精品导航| 欧美精品影院| 日韩激情一区| 欧美日韩少妇| 精品一区二区三区中文字幕视频| 不卡视频在线| 久久国产三级| 国产成人免费| 亚洲三级国产| 亚洲播播91| 青青草伊人久久| 99精品一区| 国产精品久一| 噜噜噜躁狠狠躁狠狠精品视频 | 日韩精品一区第一页| 久久99精品久久久野外观看| 亚洲精品在线观看91| 国产精品视频一区视频二区| 成人国产精品久久| 欧美日韩一二| 欧美国产91| 国产麻豆一区| 亚洲免费网址| 精品捆绑调教一区二区三区|