久久福利_99r_国产日韩在线视频_直接看av的网站_中文欧美日韩_久久一

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

總結python多進程multiprocessing的相關知識

瀏覽:105日期:2022-06-15 15:48:11
multiprocessing多進程

概念

總結python多進程multiprocessing的相關知識

創建多進程基本流程

總結python多進程multiprocessing的相關知識

創建進程對象

總結python多進程multiprocessing的相關知識

啟動進程 回收進程

總結python多進程multiprocessing的相關知識

代碼:

import multiprocessing as mpfrom time import sleep# 進程執行函數def fun(): print('開始一個進程') sleep(3) print('進程結束')# 創建進程對象p = mp.Process(target = fun)p.start() # 啟動進程p.join() # 回收進程

運行結果:

開始一個進程進程結束Process finished with exit code 0

1 、父子進程是并行執行的 子進程執行函數 父進程執行除子進程外內容:

import multiprocessing as mpfrom time import sleep# 進程執行函數def fun(): print('開始一個進程') sleep(3) print('進程結束')# 創建進程對象p = mp.Process(target = fun) # 把fun函數作為獨立子進程 其它函數由進程來執行p.start() # 啟動進程sleep(2)print('父進程執行內容')p.join() # 回收進程print('===============')'''pid = os.forkif pid == 0 fun() os._exit(0)else: os.wait()'''

運行結果:

開始一個進程父進程執行內容進程結束

===============

2、子進程不能改變父進程中變量的值代碼:

import multiprocessing as mpfrom time import sleepa = 1# 進程執行函數def fun(): print('開始一個進程') sleep(3) global a print('a=', a) a = 1000 print('a=', a) print('進程結束')# 創建進程對象p = mp.Process(target = fun) # 把fun函數作為獨立子進程 其它函數由進程來執行p.start() # 啟動進程sleep(2)print('父進程執行內容')p.join() # 回收進程print('===============')print('a=', a)

運行結果:

開始一個進程父進程執行內容a= 1a= 1000進程結束a= 1

創建多個進程代碼:

'''創建多個進程'''from multiprocessing import Processimport osfrom time import sleepdef fun1(): sleep(2) print(os.getppid(), ’--’, os.getpid(), '吃飯')def fun2(): sleep(3) print(os.getppid(), ’--’, os.getpid(), '睡覺')def fun3(): sleep(4) print(os.getppid(), ’--’, os.getpid(), '學習')jobs =[]for th in [fun1, fun2, fun3]: p = Process(target = th) jobs.append(p) p.start()for i in jobs: i.join()

運行結果:

46013 ? 46022 吃飯46013 ? 46023 睡覺46013 ? 46024 學習

含有參數的進程函數代碼:

from multiprocessing import Processfrom time import sleep# 含有參數的進程函數def worker(sec, name): for i in range(3):sleep(sec)print('I’m %s'%name)print('I’m working...')# p = Process(target = worker, args = (2, 'Tom'))p = Process(target = worker, kwargs = {’name’:’tom’, ’sec’: 2})p.start()p.join()

運行結果:

I’m tomI’m working…I’m tomI’m working…I’m tomI’m working…

案例練習

總結python多進程multiprocessing的相關知識

代碼:

from multiprocessing import Processimport osfilename = ’./dace.jpg’size = os.path.getsize(filename)# 復制上半部分def up(): fr = open(filename, ’rb’) fw = open(’bot,jpg’, ’wb’) n = size//2 fw.write(fr.read(n)) fw.close() fr.close()# 復制下半部分def down(): fr = open(filename, ’rb’) fw = open(’bot,jpg’, ’wb’) fr.seek(size//2.0) fw.write(fr.read()) fw.close() fr.close()p = Process(target = up)q = Process(target = down)p.start()q.start()p.join()q.join()

到此這篇關于總結python多進程multiprocessing的相關知識的文章就介紹到這了,更多相關python multiprocessing多進程內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 毛片免费网站 | 奇米在线视频 | 嫩草视频在线观看免费 | 国产真实精品久久二三区 | 午夜精品久久久久久久白皮肤 | 久久综合一区二区三区 | 国产精品色在线网站 | 久久久久久9| 日韩色综合 | 欧美国产精品一区二区三区 | 一级片观看 | 国产1级片| 亚洲精品视频一区二区三区 | 日本免费黄色 | 亚洲精品乱码久久久久久久 | 国产三级自拍 | 日韩精品专区在线影院重磅 | 色花av| 日本一区二区中文字幕 | 日韩欧美综合 | 狠狠操综合网 | 欧美日韩国产一区二区三区 | 国产精品久久久久久久久免费丝袜 | 亚洲97| 久久男女| 精品久久影院 | 一级片手机免费看 | 欧美中文字幕在线 | 国产黄色av| 欧美a在线| 成人免费视频网站在线观看 | 国产精品成人3p一区二区三区 | 91在线观看免费 | 麻豆沈芯语在线观看 | 午夜电影网站 | 国产91综合一区在线观看 | 九九亚洲| 日韩福利在线 | 中文字幕在线观看免费 | 欧美黑人一级毛片 | www.国产.com |