#_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
-------等待子进程-------
-------父进程执行结束-------

最新文章

  1. Linux下的磁盘分割和文件系统
  2. 使用Sqlserver更新锁防止数据脏读
  3. 《实战Java虚拟机》,最简单的JVM入门书,京东活动,满200就减100了,该出手了
  4. python之路4
  5. SPSS数据分析—聚类分析
  6. myeclipse2014 svn插件添加
  7. js动态生成二维码图片
  8. React Native官方DEMO
  9. Javascript中new Date的坑
  10. Fluent Nhibernate and Stored Procedures
  11. 问答精华-IntelliJ IDEA快捷键大全
  12. ORACLE网络配置大全没有比这个更详细的【weber出品】
  13. 主攻ASP.NET MVC4.0之重生:ASP.NET MVC使用JSONP
  14. [Machine Learning] 深度学习中消失的梯度
  15. 知名渗透测试利器分享 - Appscan下载
  16. JavaScript随机数类型
  17. Redis数据结构之HperLogLog
  18. L2-028 秀恩爱分得快(模拟)
  19. angular-控制器
  20. Django--CSRF 跨站请求伪造

热门文章

  1. JAVA基础学习-多态 对象转型 final
  2. RMI远端方法调用
  3. qfile读取txt文件
  4. Hive速览
  5. php重定向说明
  6. mongodb数据库管道操作
  7. 可持化永久树 的 STL ( rope )
  8. windows10自动更新好烦啊
  9. yield列表反转 islice切片(2.6)
  10. 使用Jedis操作Redis-使用Java语言在客户端操作---set类型