python-- 进程的常用属性、守护进程(python读取excel数据)

网友投稿 422 2022-08-25


python-- 进程的常用属性、守护进程(python读取excel数据)

常用属性

p.name = 给p进程一个名字p.pid 返回p进程的pidp.daemon = True 将p进程设置为守护进程。(True为守护进程,False为普通进程)

from multiprocessing import Processimport osimport timedef func(): print('这里是儿子,儿子的pid是%s' % (os.getpid()))if __name__ == '__main__': p = Process(target=func) p.start() p.name = 'zou' print('儿子的名字是%s' % (p.name)) print('儿子的pid是%s' % (p.pid)) print('儿子是不是守护进程?', p.daemon)

结果:

儿子的名字是zou儿子的pid是3706儿子是不是守护进程? False这里是儿子,儿子的pid是3706

守护进程

守护进程,必须要在start之前设置,之后设置会报错守护进程:跟随着父进程的代码执行结束,守护进程就结束(不严谨,看下面的例子)守护进程:不允许开启子进程

没有守护进程

from multiprocessing import Processimport osimport timedef func(): print('子进程结束了')if __name__ == '__main__': p = Process(target=func) p.start() p.name = 'zou' print('主进程结束了')

结果:

主进程结束了子进程结束了

没有守护进程时,主进程结束了,子进程还在执行

有守护进程

from multiprocessing import Processimport osimport timedef func(): print('子进程结束了')if __name__ == '__main__': p = Process(target=func) p.daemon = True # 将p进程设置为守护进程,必须要在start之前设置 p.start() p.name = 'zou' print('主进程结束了')

结果:

主进程结束了

将p进程设置为守护进程后,主进程结束后,不管子进程执行到哪,子进程都会结束

from multiprocessing import Processimport osimport timedef func(): time.sleep(1) print('子进程结束了')if __name__ == '__main__': p = Process(target=func) p.daemon = True # 将p进程设置为守护进程,必须要在start之前设置 p.start() p.name = 'zou' print('主进程结束了') p.join()

结果:

主进程结束了子进程结束了

如果有join()则会等待子进程结束完

守护进程:不允许开启子进程

没有设置守护进程时

from multiprocessing import Processimport timedef demo(): print('demo....')def func(): p1 = Process(target=demo) p1.start() print('子进程结束了')if __name__ == '__main__': p = Process(target=func) # p.daemon=True# 将p进程设置为守护进程,必须要在start之前设置 p.start() p.name = 'zou' print('主进程结束了') time.sleep(2)

结果:

可以启动子进程

主进程结束了子进程结束了demo....

设置了守护进程

from multiprocessing import Processimport osimport timedef demo(): print('demo....')def func(): p1 = Process(target=demo) p1.start() print('子进程结束了')if __name__ == '__main__': p = Process(target=func) p.daemon = True # 将p进程设置为守护进程 p.start() p.name = 'zou' print('主进程结束了') time.sleep(2)

运行会报错


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Java pdf文件书签承前缩放验证的设置方法
下一篇:python-- 多进程队列 Queue、生成者和消费者(python编译器)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~