美文网首页
线程 -- 主线程等待子线程

线程 -- 主线程等待子线程

作者: glRu | 来源:发表于2020-07-27 10:33 被阅读0次

例子:

import threading

import time

def test1():

    for iin range(5):

        print("-----test1----%d---" % i)

        time. sleep(1)

# 如果创建 Thread 时执行的函数,运行结束那么意味着这个子线程结束了

def test2():

    for iin range(10):

        print("-----test2----%d---" % i)

        time. sleep(1)

def main():

    t1= threading.Thread(target=test1)  # 定义第 1 个线程

    t2= threading.Thread(target=test2)  # 定义第 2 个线程

    t1.start()  # 子线程 1 开始运行

    t2.start()  # 子线程 2 开始运行

while True:

    print(threading.enumerate())  # 打印所有线程信息

    if len(threading.enumerate()) <= 1:

        break

    time. sleep(1)

if __name__== '__main__':

    main()

总结

虽然线程间的运行是无序的,但是主线程会等待子线程结束,然后再结束。

若是一个程序的主线程被杀死,那么子线程也必定会结束。

相关文章

  • C++ 线程类thread

    c++ 线程类 thread 注:join 是线程等待,等待子线程结束后在继续执行;线程等待要用sleep_for...

  • Java基础(五)-多线程-2

    问:如何实现子线程先执行,主线程再执行答: 启动子线程后,立即调用该线程的join()方法,则主线程必须等待子线程...

  • 线程 -- 主线程等待子线程

    例子: import threadingimport timedef test1(): for iin rang...

  • 关于线程安全问题

    一、 通过线程池创建A,B,C三个子线程,并设置A子线程执行1秒;B子线程执行3秒; C子线程执行7秒。要求:①主...

  • 三、线程间协调

    父线程开启、中断、等待子线程结束 阻塞等待获取异步线程的执行结果 等待-通知模型,条件不满足休眠等待 Synchn...

  • rust 并发

    1、启动子线程 2、线程异常 3、同步等待子线程执行完毕 4、子线程访问外部数据 5、共享可变数据 1. rust...

  • 线程-11.24

    1.使用threading模块 单线程执行: 多线程执行: 主线程会等待所有的子线程结束后才结束 查看线程数量: ...

  • 线程总结

    daemon守护线程 当主线程执行完成后,守护线程不管是否完成,立即终止。 join 当前主线程等待子线程执行完成...

  • MMKV替换SP

    SP:commit 通过子线程异步写文件,但通过CountDownLatch等待子线程文件写完,所以在主线程同步...

  • Java 面试题

    java多线程实现主线程等待子线程执行完问题 1、使用Thread的join()方法,join()方法会阻塞主线程...

网友评论

      本文标题:线程 -- 主线程等待子线程

      本文链接:https://www.haomeiwen.com/subject/faoalktx.html