zoukankan      html  css  js  c++  java
  • 使用multiprocessing模块创建进程

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


  • 相关阅读:
    散列
    红黑树
    发散二叉搜索树
    二叉搜索树的删除和联结
    平衡树
    二叉搜索树的划分
    在二叉搜索树的根进行插入
    paper169:2020CVPR文章解读:nestedVAE:Isolating common facters via weak supervision
    paper 168: 2018-FATTEN 论文解析-feature space transfer for data augmentation
    paper 167:GPU的使用Theano之tutorial
  • 原文地址:https://www.cnblogs.com/startl/p/12054042.html
Copyright © 2011-2022 走看看