Python 守护进程

Posted on 2019-01-14 15:55  缥缈映苍穹  阅读(129)  评论(0)    收藏  举报
import time
from multiprocessing import Process

def f1():
    time.sleep(3)
    print("xxxx")

def f2():
    time.sleep(5)
    print("普通子进程的代码")

if __name__ == '__main__':
    p = Process(target=f1,)
    p.daemon = True #将该进程设置为守护进程,必须写在start之前,意思如果我的主进程代码运行结束了,你这个子进程不管运行到什么地方,都直接结束
    p.start()

    # 开启一个普通的子进程来验证一下守护进程的结束只和主进程的代码运行结束有关系,而整个程序的结束需要主进程和普通的子进程的代码都运行结束才结束
    p2 = Process(target=f2,)
    p2.start()
    # 等待2号普通进程的结束,才继续执行下面主进程中的代码
    # p2.join()
    # 守护进程会跟跟着父进程的代码运行结束,就结束
    print("主进程结束")