尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

threading线程模块:线程创建、执行顺序、线程等待详解

threading线程模块:线程创建、执行顺序、线程等待详解
📅 发布时间:2026/6/18 23:52:44

博客导语

Python多线程是IO密集任务最优解之一,新手最容易踩的坑:主线程提前退出、子线程乱序执行、不知道join阻塞原理。本文手把手讲解线程两种创建方式、守护线程、线程等待、执行顺序底层机制。

一、线程创建两种标准方式

1. 函数式创建(简单任务首选)

import threading import time def task(name): print(f"子线程 {name} 开始执行") time.sleep(2) print(f"子线程 {name} 执行结束") if __name__ == "__main__": t1 = threading.Thread(target=task, args=("线程1",)) t2 = threading.Thread(target=task, args=("线程2",)) t1.start() t2.start()

2. 类继承创建(复杂任务首选)

class MyThread(threading.Thread): def __init__(self,name): super().__init__() self.name = name def run(self): print(f"子线程 {self.name} 运行") time.sleep(2) t = MyThread("自定义线程") t.start()

二、线程核心方法

  • start():创建并启动线程,只能调用一次

  • run():线程真正执行逻辑,不启动线程

  • join():主线程阻塞等待子线程结束

  • is_alive():判断线程是否存活


三、线程等待 join() 关键原理

默认情况下,主线程不会等待子线程,主线程执行完毕会直接退出程序。join() 会阻塞主线程,直到子线程执行完毕。

t1.start() t1.join() # 主线程等待 t1 结束再往下走 print("主线程结束")

四、守护线程 daemon

守护线程:主线程退出,守护线程强制退出,不阻塞程序结束。日志、心跳线程常用。

t = threading.Thread(target=task, daemon=True)

五、线程执行无序性

线程由操作系统调度,执行顺序随机,无法人为控制,这也是线程安全问题的根源。

相关新闻

  • 2026年成都GEO优化机构综合实力排名及选型参考 - 刘向阳而生
  • ASC1T45S 1 位双电源总线收发器高可靠性与环境适应性及应用解析
  • 基于 QT(C++) 实现 (GUI)IP 流量分析程序

最新新闻

  • 2026汉中防水补漏靠谱服务商盘点:屋面/厨卫/外墙/地下室渗水维修详解,适配秦巴盆地多雨湿冷防冻防潮甄选指南 - 宅安选房屋修缮
  • OpenHarmony鸿蒙PC完成ohos-sdk适配自动签名编译rust_decimal三方库,用于高精度十进制浮点场景
  • 2026大理防水补漏靠谱服务商盘点:屋面/厨卫/外墙/地下室渗水维修详解,适配滇西高原大风长雨季防潮甄选指南 - 宅安选房屋修缮
  • 2026 珠海黄金回收去哪卖 滨海旧金上门到店变现实操攻略 - 靖昱黄金回收
  • AccessGuard v0.8:RBAC + ABAC 融合 — TypeScript 交叉类型与类型收窄深度实战
  • 2026年更新:南通专业车库扫地机销售公司选择指南与深度剖析 - 品牌鉴赏官2026

日新闻

  • 5分钟掌握Python进化算法:Geatpy高性能优化工具完全指南
  • Microchip 24AA044 EEPROM选型与应用全指南:从参数解析到实战编程
  • 华为的鸿蒙到底有多牛?为什么称作遥遥领先?

周新闻

  • 3步解锁iOS设备:applera1n激活锁绕过完全指南
  • 39 2026 人工智能证书终极盘点,普通人选 AI 证书可以从这些方向入手
  • Redis 暴露公网有多危险?从端口检查到补救步骤

月新闻

  • 【总结】入门篇:50句话让你记住架构核心概念
  • WeChatMsg技术方案解析:实现Mac微信数据自主管理的完整解决方案
  • WeChatMsg:革新性微信数据备份方案,打造你的专属数字记忆库

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号