进程2

使用multiprocessing模块: 派生Process的子类,重写run方法

import os,time
from multiprocessing import Process

class MyProcess(Process):
    def __init__(self):
        Process.__init__(self)

    def run(self):
        print("子进程开始>>>pid={0},ppid={1}".format(os.getpid(),os.getppid()))
        time.sleep(2)
        print("子进程终止>>>pid={}".format(os.getpid()))

def main():
    print("主进程开始>>>pid={}".format(os.getpid()))
    t1=time.time()

    ps=[]
    #创建子进程实例
    for i in range(2):
        p=MyProcess()
        ps.append(p)

    #开启进程
    for i in range(2):
        ps[i].start()

    #阻塞进程
    for i in range(2):
        ps[i].join()
    print("主进程终止")
    t2=time.time()
    print("runnint time".t2-t1)

if __name__=="__main__":
    main()

  

主进程开始>>>pid=15828
子进程开始>>>pid=13000,ppid=15828
子进程开始>>>pid=15324,ppid=15828
子进程终止>>>pid=13000
子进程终止>>>pid=15324
主进程终止
runnint time 2.1209330558776855

 

posted on 2019-10-18 10:56  happygril3  阅读(98)  评论(0)    收藏  举报

导航