zoukankan      html  css  js  c++  java
  • 主线程会等待子线程执行结束再结束

    一、线程的特点

      主进程会等待所有子进程执行结束后再结束。

      1、将子线程设置守护主线程:

        子线程对象 = threading.Thread(target=任务, daemon = True)

        子线程对象.setDaemon(True)

    二、示例

      要求:主线程睡一秒后退出程序

      代码1:不设置守护主线程则报错,因为任务是死循环。

      

    from threading import *
    from time import *
    
    
    def task():
        while True:
            print("任务执行中......")
    
    
    if __name__ == "__main__":
    
        t = Thread(target=task)
        t.start()
        
        # 主线程
        sleep(1)
        print("over")
    View Code

      执行结果:报错

      代码2:将子线程设置为守护主线程

      

    from threading import *
    from time import *
    
    
    def task():
        while True:
            print("任务执行中......")
    
    
    if __name__ == "__main__":
    
        t = Thread(target=task, daemon=True)
        t.start()
        
        # 主线程
        sleep(1)
        print("over")
    View Code

    执行结果:

  • 相关阅读:
    信息探测
    Hdu 1262 寻找素数对
    Hdu 1263 水果
    Hdu 1261字串数
    Hdu 1253 胜利大逃亡
    Hdu 1237简单计算器
    Hdu 1235 统计同成绩学生人数
    Hdu 1236 排名
    Hdu 1233 还是畅通工程
    Hdu 1234 开门人和关门人
  • 原文地址:https://www.cnblogs.com/yujiemeigui/p/14304877.html
Copyright © 2011-2022 走看看