国产成人AV无码一二三区,少女1到100集,国产精品久久久久精品综合紧,巜公妇之诱感肉欲HD在线播放

文章 > Python基础教程 > Python守护线程及作用

Python守护线程及作用

头像

silencement

2019-07-05 10:20:203241浏览 · 0收藏 · 0评论

有一种线程,它是在后台运行的,它的任务是为其他线程提供服务,这种线程被称为“后台线程(Daemon Thread)”,又称为“守护线程”或“精灵线程”。Python 解释器的垃圾回收线程就是典型的后台线程。

后台线程有一个特征,如果所有的前台线程都死亡了,那么后台线程会自动死亡。

调用 Thread 对象的 daemon 属性可以将指定线程设置成后台线程。下面程序将指定线程设置成后台线程,可以看到当所有的前台线程都死亡后,后台线程随之死亡。当在整个虚拟机中只剩下后台线程时,程序就没有继续运行的必要了,所以程序也就退出了。

import threading

# 定义后台线程的线程执行体与普通线程没有任何区别
def action(max):
    for i in range(max):
        print(threading.current_thread().name + "  " + str(i))
t = threading.Thread(target=action, args=(100,), name='后台线程')
# 将此线程设置成后台线程
# 也可在创建Thread对象时通过daemon参数将其设为后台线程
t.daemon = True
# 启动后台线程
t.start()
for i in range(10):
    print(threading.current_thread().name + "  " + str(i))
# -----程序执行到此处,前台线程(主线程)结束------
# 后台线程也应该随之结束

上面程序中先将 t 线程设置成后台线程(第 10 行代码),然后启动该线程。本来该线程应该执行到 i 等于 99 时才会结束,但在运行程序时不难发现,该后台线程无法运行到 99,因为当主线程也就是程序中唯一的前台线程运行结束后,程序会主动退出,所以后台线程也就被结束了。

从上面的程序可以看出,主线程默认是前台线程,t线程默认也是前台线程。但并不是所有的线程默认都是前台线程,有些线程默认就是后台线程。前台线程创建的子线程默认是前台线程,后台线程创建的子线程默认是后台线程。

可见,创建后台线程有两种方式:

主动将线程的 daemon 属性设置为 True。

后台线程启动的线程默认是后台线程。

注意,当前台线程死亡后,Python 解释器会通知后台线程死亡,但是从它接收指令到做出响应需要一定的时间。如果要将某个线程设置为后台线程,则必须在该线程启动之前进行设置。也就是说,将 daemon 属性设为 True,必须在 start() 方法调用之前进行,否则会引发 RuntimeError 异常。

关注

关注公众号,随时随地在线学习

本教程部分素材来源于网络,版权问题联系站长!

快拨出天我是你母亲歌词监控 | 续父开续女包小芳的小说破| 少女的秘密24集| 土豆网下载| 免费观看60分钟高清电视剧| 麻花传MV在线观看的最新进展| 女生干多了腿中间会变宽吗| 搞笑视频| 美女胸部视频| 《与上司做爰HD》| 《艳乳欲乱2》免费观看| 电影《轮番上阵》| A片| 成 人香蕉 黄 色 网 站 视..| 《男医生的特殊治疗》| 小峡子边喂奶边和我做爰| 大叔与妹妹免费观看电视剧高清| 爷爷的鸡又黑又长下一句怎么接| 992TV| 剧烈运动摇床打扑克视频原声| 五姑娘影院在线观看免费版电视剧| 成品人和精品人的区别在哪里知乎 | 两领导在车上吃我的奶| 小俊在雪姨身上耕耘小说免费阅读| 摸摸大扔子图片真实| 《妻欲公与媳》免费看| 《我的漂亮老师2》| DJ快了又快又骚的POP歌曲| 电影《法国空姐2》| 《从上司到妻子》动画结局| 《性88分钟》| 女性扒开大腿内侧小肚子痒 | 《囚禁空姐》电影免费观看| 亲吻哼哼唧唧原声不带歌| 麻豆免费无码AV在线播放| 妻子的姐姐免费观看大全电视剧| 女朋友的妹妹ID| 欧美风高级情侣ID| 《尼姑也疯狂》完整版| 合不拢腿(双)BY粗眉毛免费阅.| 妈妈洗澡不把门关紧暗示什么