如何调整 Python 线程执行顺序?

2026-05-16 22:570阅读0评论SEO资讯
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计1669个文字,预计阅读时间需要7分钟。

如何调整 Python 线程执行顺序?

一、主线程会等待所有子线程结束后才结束。首先,我会查看最普遍的情况,然后分析主线程和子线程的状态。

import threadingfrom time import sleep, ctime

def sing(): for i in range(3): print(正在唱歌...%d % i) sleep(1)

一、主线程会等待所有的子线程结束后才结束

首先我看下最普通情况下,主线程和子线程的情况。

import threading from time import sleep, ctime def sing(): for i in range(3): print("正在唱歌...%d" % i) sleep(1) def dance(): for i in range(3): print("正在跳舞...%d" % i) sleep(1) if __name__ == '__main__': print('---开始---:%s' % ctime()) t1 = threading.Thread(target=sing) t2 = threading.Thread(target=dance) t1.start() t2.start() print('---结束---:%s' % ctime())

运行结果:

最后一行打印的代码就算在一开始运行了,程序也不会结束。

只有等待所有的子线程(sing 和 dance)都执行完毕,主线程才会结束,即程序结束。

阅读全文
标签:方法

本文共计1669个文字,预计阅读时间需要7分钟。

如何调整 Python 线程执行顺序?

一、主线程会等待所有子线程结束后才结束。首先,我会查看最普遍的情况,然后分析主线程和子线程的状态。

import threadingfrom time import sleep, ctime

def sing(): for i in range(3): print(正在唱歌...%d % i) sleep(1)

一、主线程会等待所有的子线程结束后才结束

首先我看下最普通情况下,主线程和子线程的情况。

import threading from time import sleep, ctime def sing(): for i in range(3): print("正在唱歌...%d" % i) sleep(1) def dance(): for i in range(3): print("正在跳舞...%d" % i) sleep(1) if __name__ == '__main__': print('---开始---:%s' % ctime()) t1 = threading.Thread(target=sing) t2 = threading.Thread(target=dance) t1.start() t2.start() print('---结束---:%s' % ctime())

运行结果:

最后一行打印的代码就算在一开始运行了,程序也不会结束。

只有等待所有的子线程(sing 和 dance)都执行完毕,主线程才会结束,即程序结束。

阅读全文
标签:方法