Python3 threading.Thread setDeamon jion 用法详解-新乡seo|网站优化,网站建设_微信公众号:zeropython—昊天博客

Python3 threading.Thread setDeamon jion

Python3 守护进程 setDeamon :

1.守护进程:

(1)守护进程会在主进程结束的时候立马结束

(2)守护进程要设置在start之前

(3)守护进程能不能再开启子进程,否则会报错。(错误:AssertionError: daemonic processes are not allowed to have children)

下面请看一个例子:

返回的结果是:

Python3 threading.Thread setDeamon jion 用法详解-新乡seo|网站优化,网站建设_微信公众号:zeropython—昊天博客

使用setDaemon()和守护线程这方面知识有关, 比如在启动线程前设置thread.setDaemon(True),就是设置该线程为守护线程,
表示该线程是不重要的,进程退出时不需要等待这个线程执行完成。
这样做的意义在于:避免子线程无限死循环,导致退不出程序,也就是避免楼上说的孤儿进程。

thread.setDaemon()设置为True, 则设为true的话 则主线程执行完毕后会将子线程回收掉,
设置为false,主进程执行结束时不会回收子线程

Python3 瞬间就执行完毕了,守护进程会在主进程结束的时候立马结束

Python3 threading.Thread jion() 等待线程

Python3 threading.Thread 的jion()用法实例

# -*- coding: utf-8 -*- import time __author__ = 'songhao' i…

开启多个线程执行join() 一般的步骤是这样的

执行的结果是:

Python3 threading.Thread setDeamon jion 用法详解-新乡seo|网站优化,网站建设_微信公众号:zeropython—昊天博客

执行的结果是正确的,程序是并行的,所有时间是2秒多点,有的同学很疑问这几行代码:

为什么要单独的拿出来进行join呢? 我们做个实验?

输出的结果是:

Python3 threading.Thread setDeamon jion 用法详解-新乡seo|网站优化,网站建设_微信公众号:zeropython—昊天博客

由于start()后直接就进行了join(),这里可以理解成等待.所以程序由并行,变成了串行.

https://www.yuanmas.com/info/NmODZAgpax.html

http://www.cnblogs.com/alex3714/articles/5230609.html