创建线程常用threading.Thread类,通过target参数传入函数或继承并重写run方法;需调用start()启动线程,join()等待结束,适合I/O密集型任务。

在 Python 中,创建线程通常使用 threading 模块,而不是旧的 thread 模块(在 Python 3 中已被重命名为 _thread,不推荐直接使用)。
最常用的方式是通过实例化 threading.Thread 类来创建线程。你可以将一个函数传递给 Thread 的 target 参数。
示例代码:
import threading
import time
def worker(name):
print(f"线程 {name} 开始工作")
time.sleep(2)
print(f"线程 {name} 工作结束")
# 创建线程对象
t1 = threading.Thread(target=worker, args=("A",))
t2 = threading.Thread(target=worker, args=("B",))
# 启动线程
t1.start()
t2.start()
# 等待线程执行完毕
t1.join()
t2.join()
print("所有线程已完成")你也可以通过继承 threading.Thread 类并重写 run() 方法来自定义线程行为。
示例代码:
import threading
import time
class MyThread(threading.Thread):
def __init__(self, name):
super().__init__()
self.name = name
def run(self):
print(f"线程 {self.name} 开始运行")
time.sleep(2)
print(f"线程 {self.name} 结束")
# 创建并启动线程
t1 = MyThread("X")
t2 = MyThread("Y")
t1.start()
t2.start()
t1.join()
t2.join()
print("主线程结束")示例:检查线程状态
print(t1.is_alive()) # 返回 True 或 False
Python 的多线程受 GIL(全局解释器锁)限制,适合 I/O 密集型任务,不适合 CPU 密集型计算。如需真正并行,建议使用 multiprocessing 模块。
立即学习“Python免费学习笔记(深入)”;
基本上就这些。使用 threading.Thread 是最清晰、灵活的方式。
以上就是python thread模块创建线程的详细内容,更多请关注php中文网其它相关文章!
python怎么学习?python怎么入门?python在哪学?python怎么学才快?不用担心,这里为大家提供了python速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号