线程_apply堵塞式
2024-09-06 06:57:12
'''
创建三个进程,让三个进程分别执行功能,关闭进程
Pool 创建 ,apply执行 , close,join 关闭进程
'''
from multiprocessing import Pool
import os,time,random def worker(msg):
# 创建一个函数,用来使进程进行执行
time_start = time.time()
print("%s 号进程开始执行,进程号为 %d"%(msg,os.getpid()))
# 使用os.getpid()获取子进程号
# os.getppid()返回父进程号
time.sleep(random.random()*2)
time_end = time.time()
print(msg,"号进程执行完毕,耗时%0.2f"%(time_end-time_start))
# 计算运行时间 if __name__ == '__main__': po = Pool(3)#创建三个进程
print("进程开始")
for i in range(3):
# 使用for循环,运行刚刚创建的进程
po.apply(worker,(i,))#进程池调用方式apply堵塞式
# 第一个参数为函数名,第二个参数为元组类型的参数(函数运行会用到的形参)
#只有当进程执行完退出后,才会新创建子进程来调用请求 po.close()# 关闭进程池,关闭后po不再接收新的请求
# 先使用进程的close函数关闭,后使用join函数进行等待
po.join() # 等待po中所有子进程执行完成,必须放在close语句之后 print("进程结束") '''创建->apply应用->close关闭->join等待结束'''
2020-05-07
最新文章
- D3.js学习(三)
- Lucene索引文件学习
- VR视频外包公司(长年承接虚拟全景外包、虚拟现实视频外包)
- 用markdown学习写出总结
- hdu 5105 求函数极值 函数求导/三分法
- kenrnel 驱动中常用的宏
- SparkSQL使用之JDBC代码访问Thrift JDBC Server
- OC - 7.Foundation框架的简单介绍
- Android学习之旅:五子棋
- perl return和break
- referer htttp headers 统计信息 防盗链
- poj 2299 树状数组求逆序数+离散化
- (转)UML类图与类的关系详解
- 3.2、Android Studio在物理设备中运行APP
- mongodb副本集原理及部署记录
- vue_VueRouter 路由_路由器管理n个路由_并向路由组件传递数据_新标签路由_编程式路由导航
- SOAP UI-----测webservice接口
- 【PAT】B1078 字符串压缩与解压(20 分)
- pom.xml文件详解
- 在jenkins和sonar中集成jacoco(一)--使用jacoco收集单元测试的覆盖率