首页 > 其他分享 >守护线程

守护线程

时间:2022-10-31 10:26:54浏览次数:43  
标签:args 主线 setDaemon 线程 完成 守护

守护线程

一、守护线程定义:
setDaemon:
将线程声明为守护线程,必须在start()方法调用之前设置,如果不设置为守护线程程序会被无限挂起。这个方法基本和join是相反的。当我们在程序运行中,执行一个主线程,如果主线程又创建一个子线程,主线程和子线程就分兵两路,分别运行,那么当主线程完成想退出时,会检验子线程是否完成。如果子线程未完成,则主线程会等待子线程完成后再退出。但是有时候我们需要的是只要主线程完成了,不管子线程是否完成,都要和主线程—起退出,这时就可以用setDaemon方法
代码如下:
def thread_it(func, *args):
    # 创建
    t = threading.Thread(target=func, args=args)
    # 守护 !!!
    t.setDaemon(True)
    # 启动
    t.start()
    # 阻塞--卡死界面!
    # t.join()

总结

t.setDaemon(True) 当前的子线程设置为守护线程
守护线程:随着主线程的终止而终止,不管当前主线程下有多少子线程没有执行完毕,都会终止。

标签:args,主线,setDaemon,线程,完成,守护
From: https://www.cnblogs.com/chunyouqudongwuyuan/p/16843370.html

相关文章

  • Java多线程(6):锁与AQS(下)
    您好,我是湘王,这是我的博客园,欢迎您来,欢迎您再来~ 之前说过,AQS(抽象队列同步器)是Java锁机制的底层实现。既然它这么优秀,是骡子是马,就拉出来溜溜吧。首先用重入锁来实现简......
  • 进程与线程
    进程概念被执行的程序的实例就是一个进程(类似docker的镜像与容器)每个进程拥有它自己的虚拟CPU。当然,实际上真正的CPU在各进程之间来回切换。但为了理解这种系统,考虑在......
  • Java线程实现/创建方式
    Java线程实现/创建方式继承Thread类:Thread类本质上是实现了Runnable接口的一个实例,代表一个线程的实例。启动线程的唯一方法就是通过Thread类的start()实例方法。st......
  • java多线程-线程安全集合
    CopyOnWriteArrayListCopyOnWrite思想就是将原来的数据copy一份出来修改,然后把修改后的数据替换原来的数据。在setArray之前并发读到的还是旧数据,弱一致性。publi......
  • 驱动开发:内核监控进程与线程回调
    在前面的文章中`LyShark`一直在重复的实现对系统底层模块的枚举,今天我们将展开一个新的话题,内核监控,我们以`监控进程线程`创建为例,在`Win10`系统中监控进......
  • Linux--多线程(二)
    线程的同步和互斥基本概念概述:现在操作系统基本都是多任务的操作系统,同时有大量可以调度的实体在运行。在多任务操作系统当中,同时运行的多个任务可能:都需要访问/使用同......
  • Java多线程(6):锁与AQS(中)
    您好,我是湘王,这是我的博客园,欢迎您来,欢迎您再来~ Java中的AQS(AbstractQueuedSynchronizer,抽象队列同步器)是用来实现锁及其他同步功能组件的Java底层技术基础,java.util.co......
  • JavaScript – event loop 事件循环, 单线程, Web Worker
    前言因为要写RxJS系列,有一篇要介绍scheduler.它需要基础的JS执行机制,于是就有了这里篇. 顺带也介绍以下WebWorker呗. 参考知乎–详解JavaScript中的......
  • 聊一聊如何优雅的停下线程,除了这两种还有其他的吗?
    前言今天主要来聊一聊如何优雅的停下线程。在开始之前,我们可以思考一下,如何能够让线程停下?通过查阅JDK,我们不难发现Thread为我们提供了一个stop方法,只要使用stop方法,就立即......
  • Linux--多线程(一)
    线程线程的概念线程:线程是OS能够进行运算调度的基本单位。线程是一个进程中的一个单一执行流,通俗地说,一个程序里的一个执行路线就叫做线程。可以知道的是,一个进程至少......