Python的标准库提供了两个模块:_thread和threading,_thread是低级模块,threading是高级模块,对_thread进行了封装。绝大多数情况下,我们只需要使用threading这个高级模块。

方式一:
把一个函数传入并创建Thread实例,然后调用start()开始执行

import threadingdef loop():for i in range(30):print(threading.current_thread().name + " --- " + str(i))threadA = threading.Thread(target=loop, name="线程A")
threadB = threading.Thread(target=loop, name="线程B")
threadA.start()
threadB.start()

执行结果部分截图如下:


方式二:
定义一个类,继承自 threading.Thread类,使用 init(self) 方法进行初始化,在 run(self) 方法中写上该线程要执行的程序,然后调用 start() 方法执行

'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:778463939
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
import threading class MyThread(threading.Thread):def __init__(self, name):threading.Thread.__init__(self)self.name = namedef run(self):for i in range(20):print(threading.current_thread().name + " --- " + str(i))threadA = MyThread("线程A")
threadB = MyThread("线程B")
threadA.start()
threadB.start()

执行结果部分截图如下:

可以看到,输出结果中,线程 A、B 的顺序是混在一起的。

Python3 多线程的两种实现方式相关推荐

  1. 多线程python实现方式_python多线程的两种实现方式(代码教程)

    本篇文章给大家带来的内容是关于python多线程的两种实现方式(代码教程),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 线程是轻量级的进程,进程中可划分出多个线程,线程可独立的调度 ...

  2. python多线程实现方法_Python3 多线程的两种实现方式

    最近学习 Python3 ,希望能掌握多线程的使用,在此做个笔记.同时也希望Python 牛人指点错误.关于线程的概念,前面简单总结了一下 java 的多线程,传送门:java 多线程概念,三种创建多 ...

  3. Java基础21 多线程线程两种实现方式 锁

    一.多线程的概念 1.程序 :一个固定逻辑与数据的集合 就称为程序 例如淘宝 贪吃蛇小游戏 2.CPU: 中央处理器 主要用于协调程序与硬件进行配置的工作 3.并发与并行 1.并发(高并发) 在同一个 ...

  4. django多线程_Django两种启动方式(runserver和uwsgi)的区别

    uWSGI 是一个(巨大的) C 应用,所以你需要一个 C 编译器(比如 gcc)和python-dev. 把它部署到 HTTP 端口 9090 现在运行 uWSGI 来启动一个会把请求传递给你的 W ...

  5. Python多线程的两种实现方式

    Python的标准库提供了两个模块:_thread和threading,_thread是低级模块,threading是高级模块,对_thread进行了封装.绝大多数情况下,我们只需要使用threadi ...

  6. 多线程的两种实现方式和区别?

    1.继承Tread类2.实现Runnable接口 1方法实例化一个线程时,多次调用start()也只能启动一个线程.实例化多个线程实例,每个实例调用一次start()可以启动多个线程,但线程中的资源也 ...

  7. 【Java_多线程并发编程】基础篇—线程状态及实现多线程的两种方式

    1.Java多线程的概念 同一时间段内,位于同一处理器上多个已开启但未执行完毕的线程叫做多线程.他们通过轮寻获得CPU处理时间,从而在宏观上构成一种同时在执行的假象,实质上在任意时刻只有一个线程获得C ...

  8. Java多线程两种实现方式的对比

    Java多线程两种实现方式的对比 一种,直接继承Thread类 一种,实现Thread类的Runnable接口 两种方式的区别 比如,售票厅有四个窗口,可以发售某日某次列出的100张车票,此时,100 ...

  9. 多线程基础-实现多线程的两种方式(二)

    实现多线程的两种方式: 1.实现Runnable public interface Runnable {public abstract void run(); }// RunnableTest.jav ...

最新文章

  1. 【推荐】大型网站图片服务器架构的演进
  2. 纪念逝去的岁月——C/C++选择排序
  3. WindowsPhone7入手,实在的照片
  4. 从6篇经典论文看问题生成及其相关技术
  5. 营销管理手册_麦肯锡内部培训手册,揭秘高效能团队打造的秘密,附6个案例...
  6. ListView列排序功能实现
  7. Codeforces 990G 点分治+暴力
  8. Git - 教程(廖雪峰)
  9. 有三顶红帽子和两顶蓝帽子逻辑推理
  10. 车载显示屏申请E-mark认证需要测试些什么?
  11. Flink 1.12.2 源码浅析 : yarn-per-job模式解析 [二]
  12. 基于Nano Pi NEO4开发板的AS项目开发
  13. 打开网上邻居,点击“查看工作组计算机”,出现:“Workgroup无法访问,您...
  14. 力扣---2020.10.6
  15. html倒计时自动点击,JS脚本实现网页自动秒杀点击
  16. cygwin php5.6,cygwin-autoconf环境搭建
  17. 【数列】求序列之和——递归
  18. 转:我收到一份《中国焦虑图鉴》
  19. 智慧城市地下综合管廊环境监控系统
  20. 直通车的计算机分数线,2017学考录取各校专业分数线汇总,值得参考!

热门文章

  1. Mahout的推荐系统
  2. ELK+redis搭建nginx日志分析平台
  3. 用master-worker模型比对团队管理
  4. android面试题总结加强版
  5. C#开发Android应用的必备——Mono for Android V1.0 发布
  6. 终于要考网络架构师了
  7. 年结 利润分配-未分配利润年结
  8. 工作总结的写作方法与要领
  9. 在账户确定类型KOFI没有找到总账科目
  10. 江苏省2013年会计从业资格考试《会计基础》全真模拟试题