首页 > 系统服务 > 详细

并发编程-守护进程

时间:2019-02-20 10:39:26      阅读:178      评论:0      收藏:0      [点我收藏+]

主进程创建守护进程

  其一:守护进程会在主进程代码执行结束后就终止

  其二:守护进程内无法再开启子进程,否则抛出异常:AssertionError: daemonic processes are not allowed to have children

注意:进程之间是互相独立的,主进程代码运行结束,守护进程随即终止。

from multiprocessing import Process
import time

def task(name):
    print(%s is running %name)
    time.sleep(2)
    p=Process(target=time.sleep,args=(3,))
    p.start()

if __name__ == __main__:
    p = Process(target=task,args=(子进程1,))
    p.daemon = True  # 守护进程
    p.start()

    p.join()  # 子程序先运行,后运行主程序
    print()  # 守护进程会在主进程代码执行结束后就终止

练习:

#练习题
from multiprocessing import Process

import time
def foo():
    print(123)
    time.sleep(1)
    print("end123")

def bar():
    print(456)
    time.sleep(3)
    print("end456")

if __name__ == __main__:
    p1=Process(target=foo)
    p2=Process(target=bar)

    p1.daemon=True  # 主进程运行完毕,守护进程也就结束掉了
    p1.start()
    p2.start()
    print("main-------")

 

并发编程-守护进程

原文:https://www.cnblogs.com/hexiaorui123/p/10404566.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!