国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

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

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

瀏覽:88日期: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 編程
相關文章:
主站蜘蛛池模板: 久久精品欧美日韩精品 | 成人午夜视频免费观看 | 国产午夜精品久久理论片 | 一区二区视频在线 | 九草在线观看 | 一本伊大人香蕉高清在线观看 | 永久黄网站色视频免费网站 | 国产精品视频免费一区二区三区 | 久久在线播放 | 久久久久国产精品免费 | 青青操网站 | 美女被免费网站视频软件 | 精品久久久久久久久久久久久久久 | 日本男人天堂 | 免费在线亚洲视频 | 一级毛片私人影院免费 | 99热在线获取最新地址 | 国产精品久久久久久久人热 | 美女131爽爽爽做爰中文视频 | 嫩模大尺度人体福利视频 | 欧美在线观看高清一二三区 | 日本精品视频一区二区三区 | 亚洲日本一区二区三区高清在线 | 天天澡天天碰天天狠伊人五月 | aa国产| 91精品免费高清在线 | 久久女厕一次看个够 | 久草网在线视频 | 亚洲成a人片| 欧美视频第一页 | 97影院理论在线观看 | 97视频在线播放 | 99re9精品视频在线 | 欧美国产成人在线 | 国产欧美在线不卡 | 久久久久国产精品免费免费 | 99视频精品在线 | 久久草在线视频播放 | 国产性生交xxxxx免费 | 国产91丝袜美腿在线观看 | 亚洲精品视频在线观看视频 |