首页 > 编程语言 > 详细

5守护父进程的子进程/子线程

时间:2020-05-30 19:18:00      阅读:44      评论:0      收藏:0      [点我收藏+]
"""守护父进程的子进程"""


"""
可以在调用进程实例对象的方法start()之前将属性daemon的值设置为True,从而将进程设置为守护进程。
守护进程是为了守护父进程而存在的子进程,当父进程结束时,守护进程没有存在的意义。
守护进程会随着父进程的结束而立刻结束。
"""

from multiprocessing import current_process, Process
import time

class MyProcess(Process):
def run(self):
print(‘子进程%d启动‘ % current_process().pid)
time.sleep(2)
print(‘子进程%d结束‘ % current_process().pid)


def main():
print(‘父进程%d启动‘ % current_process().pid)

mp = MyProcess()

mp.daemon = True
mp.start()

time.sleep(1)

print(‘父进程%d结束‘ % current_process().pid)

if __name__ == ‘__main__‘:
main()

####################################################################

"""守护父线程的子线程"""


"""
在创建线程实例对象时,可以将参数daemon的值设置为True,从而将线程设置为守护线程。
此外,也可以在调用线程实例对象的方法start()之前将属性daemon的值设置为True,从而将线程
设置为守护线程。
守护线程是为了守护父线程而存在的子线程,当父线程结束时,守护线程没有存在的意义。
守护线程会随着父线程的结束而立刻结束。
"""

from threading import current_thread, Thread
import time

class Mythread(Thread):
def run(self):
print(‘子线程%s启动‘ % current_thread().getName())
time.sleep(2)
print(‘子线程%s结束‘ % current_thread().getName())


print(‘父线程%s启动‘ % current_thread().getName())

mt = Mythread()
mt.setDaemon(True)
#mt.daemon = True
mt.start()

time.sleep(1)

print(‘父线程%s结束‘ % current_thread().getName())

5守护父进程的子进程/子线程

原文:https://www.cnblogs.com/sruzzg/p/12993905.html

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