使用multiprocessing模块创建进程
2024-09-03 13:17:39
#_author:来童星
#date:2019/12/17
from multiprocessing import Process
import time
import os
#两个子进程将会调用的两个方法
def child_1(i):
print('子进程(%s)开始执行,父进程为(%s)'%(os.getpid(),os.getppid()))
t_start=time.time()
time.sleep(i)
t_end=time.time()
print("子进程(%s)执行时间为'%0.2f'秒"%(os.getpgid(),t_end-t_start))
def child_2(i):
print('子进程(%s)开始执行,父进程为(%s)'%(os.getpid(),os.getppid()))
t_start=time.time()
time.sleep(i)
t_end=time.time()
print("子进程(%s)执行时间为'%0.2f'秒"%(os.getpgid(),t_end-t_start))
if __name__=='__main__':
print('-------父进程开始执行-------')
print('父进程PID:%s'%os.getppid())
p1=Process(target=child_1,args=(1,))# 实例化进程p1
p2=Process(target=child_2,args=(2,))# 实例化进程p2
p1.start()
p2.start()
# 同时父进程仍然往下执行,如果p2进程还在执行,将会返回True
print("p1.is_alive=%s"%p1.is_alive())
print("p2.is_alive=%s"%p2.is_alive())
#输出p1,p2进程的别名和pid
print("p1.name=%s"%p1.name)
print('p1.pid=%s'%p1.pid)
print("p2.name=%s"%p2.name)
print('p2.pid=%s'%p2.pid)
print('-------等待子进程-------')
p1.join()
p2.join()
print('-------父进程执行结束-------')
运行结果:
-------父进程开始执行-------
父进程PID:5580
p1.is_alive=True
p2.is_alive=True
p1.name=Process-1
p1.pid=2508
p2.name=Process-2
p2.pid=10164
-------等待子进程-------
-------父进程执行结束-------
最新文章
- Linux下的磁盘分割和文件系统
- 使用Sqlserver更新锁防止数据脏读
- 《实战Java虚拟机》,最简单的JVM入门书,京东活动,满200就减100了,该出手了
- python之路4
- SPSS数据分析—聚类分析
- myeclipse2014 svn插件添加
- js动态生成二维码图片
- React Native官方DEMO
- Javascript中new Date的坑
- Fluent Nhibernate and Stored Procedures
- 问答精华-IntelliJ IDEA快捷键大全
- ORACLE网络配置大全没有比这个更详细的【weber出品】
- 主攻ASP.NET MVC4.0之重生:ASP.NET MVC使用JSONP
- [Machine Learning] 深度学习中消失的梯度
- 知名渗透测试利器分享 - Appscan下载
- JavaScript随机数类型
- Redis数据结构之HperLogLog
- L2-028 秀恩爱分得快(模拟)
- angular-控制器
- Django--CSRF 跨站请求伪造