亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

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

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

瀏覽:107日期: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 編程
相關文章:
主站蜘蛛池模板: 欧美一级毛片欧美一级成人毛片 | a级黄色网址 | 日韩精品中文乱码在线观看 | 丝袜足交在线 | 亚洲看片 | 国产高清第一页 | 97se狠狠狠狠狠亚洲综合网 | 国产精品二区页在线播放 | 91精品欧美一区二区三区 | 久久久亚洲国产精品主播 | 关婷哪一级毛片高清免费看 | 亚洲国产精品xo在线观看 | 亚洲精品一区二区三区网址 | se视频在线观看 | 亚洲国产精品成 | 永久免费的啪啪免费的网址 | 亚洲精品日本一区二区在线 | 国产精品你懂的在线播放 | 欧洲男女啪啪免费观看 | 欧美人成a视频www | 在线观看高清视频bbixx | 国产亚洲美女精品久久久 | 欧美高清一区二区三区欧美 | 农村高清性色生活片 | 亚洲最大免费视频网 | 久久er精品热线免费 | 亚洲成在人线影视天堂网 | 正在播放的国产a一片 | 91三级在线 | 大学生一级一片第一次欧美 | 丁香婷婷亚洲六月综合色 | 在线观看免费视频国产 | 激情爱爱网站 | 在线免费看黄的网站 | 亚洲综合自拍 | 国产三级精品91三级在专区 | 97一级毛片全部免费播放 | 手机在线观看你懂得 | 最新国产麻豆精品 | 国产青草视频在线观看 | 亚洲视频在线不卡 |