大纲
Process对象中的join方法
join方法表示等待子进程结束后再继续往下运行,通常用于进程间的同步,等待的总时间是子进程中耗费时间最长的那个进程运行的时间。
join方法演示
对比一下两种不同结果
进程锁
并发运行时会出现同时操作一个文件时候,这时候会出现操作文件内容混乱,需要加入锁机制,由并发变成了串行。
- import time
- import os
- from multiprocessing import Process, Lock
- def work(lock):
- # 获取锁
- lock.acquire()
- print('{0} is 开始工作'.format(os.getpid()))
- time.sleep(2)
- print('{0} is 结束工作'.format(os.getpid()))
- # 释放锁
- lock.release()
- lock = Lock()
- for i in range(3):
- p = Process(target=work,args=(lock,))
- p.start()
加入锁机制变成串行时运行结果
进程间通信
在父进程中创建两个子进程,一个往Queue里写数据,一个从Queue里读数据
Queue示例
文章标题:Python中多进程—Join方法使用、进程锁及进程间通信
网页网址:http://www.shufengxianlan.com/qtweb/news48/419698.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联