python开发之thread线程基础实例入门


Posted in Python onNovember 11, 2015

本文实例讲述了python开发之thread线程基础。分享给大家供大家参考,具体如下:

说到线程,我们要知道啥是串行,啥是并行程序

举个例子:

串行程序,就是一个一个的执行程序

#python threading
import time
'''
  每一秒中,输出:this is a demo!
'''
def serial():
  '''串行输出'''
  time.sleep(1)
  print('this is a demo!')
def main():
  for i in range(5):
    serial()
if __name__ == '__main__':
  main()

运行结果如下:

>>> 
this is a demo!
this is a demo!
this is a demo!
this is a demo!
this is a demo!
>>>

并行程序,就是很多个程序在同一时间(宏观)一起执行

#python threading
import threading
import time
'''
  并行执行,输出:Good!Good!Good!Good!Good!
'''
def parallel():
  '''并行输出'''
  time.sleep(1)
  print('Good!')
def main():
  for i in range(5):
    t = threading.Thread(target=parallel)
    t.start()
if __name__ == '__main__':
  main()

当然我们通过执行程序,可以知道,并行程序要比串行程序执行的要快....

我们也可以获取到当前的线程及个数:

#python threading
import threading
import time
'''
  并行执行,输出:
  [<Thread(Thread-2, started 3480)>, <Thread(Thread-1, started 660)>,
  <Thread(SockThread, started daemon 2920)>, <Thread(Thread-3, started 916)>,
  <Thread(Thread-4, started 3476)>, <_MainThread(MainThread, started 3964)>,
  <Thread(Thread-5, started 2060)>]
  存在的线程数 : 7
  Good!Good!Good!Good!Good!
'''
def parallel():
  '''并行输出'''
  time.sleep(1)
  print('Good!')
def main():
  for i in range(5):
    t = threading.Thread(target=parallel)
    t.start()
if __name__ == '__main__':
  main()
  print(threading.enumerate())
  print('存在的线程数 : %d'%threading.active_count())

运行结果如下:

>>> 
[<Thread(SockThread, started daemon 15424)>, <Thread(Thread-3, started 15840)>, <Thread(Thread-1, started 10884)>, <Thread(Thread-2, started 14512)>, <Thread(Thread-4, started 13204)>, <_MainThread(MainThread, started 12924)>, <Thread(Thread-5, started 15476)>]
存在的线程数 : 7
>>> Good!Good!Good!Good!Good!

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
PYTHON正则表达式 re模块使用说明
May 19 Python
python插入排序算法实例分析
Jul 03 Python
Python数据类型详解(四)字典:dict
May 12 Python
Python pyinotify日志监控系统处理日志的方法
Mar 08 Python
python如何定义带参数的装饰器
Mar 20 Python
python3反转字符串的3种方法(小结)
Nov 07 Python
使用IDLE的Python shell窗口实例详解
Nov 19 Python
Django如何使用redis作为缓存
May 21 Python
python os模块常用的29种方法使用详解
Jun 02 Python
Sublime Text3最新激活注册码分享适用2020最新版 亲测可用
Nov 12 Python
详解Python之Scrapy爬虫教程NBA球员数据存放到Mysql数据库
Jan 24 Python
pandas 实现将NaN转换为None
May 14 Python
python开发之thread实现布朗运动的方法
Nov 11 #Python
python开发之基于thread线程搜索本地文件的方法
Nov 11 #Python
python开发之tkinter实现图形随鼠标移动的方法
Nov 11 #Python
Python复制文件操作实例详解
Nov 10 #Python
Python中对元组和列表按条件进行排序的方法示例
Nov 10 #Python
Python 文件管理实例详解
Nov 10 #Python
Python list操作用法总结
Nov 10 #Python
You might like
PHP中实现汉字转区位码应用源码实例解析
2010/06/14 PHP
php读取csv实现csv文件下载功能
2013/12/18 PHP
PHP二维数组排序的3种方法和自定义函数分享
2014/04/09 PHP
老生常谈ThinkPHP中的行为扩展和插件(推荐)
2017/05/05 PHP
vmware linux系统安装最新的php7图解
2019/04/14 PHP
PHP封装请求类实例分析【基于Yii框架】
2019/10/17 PHP
学习面向对象之面向对象的基本概念:对象和其他基本要素
2010/11/30 Javascript
js数字转换为float,取N位小数
2014/02/08 Javascript
模仿password输入框的实现代码
2016/06/07 Javascript
JavaScript生成带有缩进的表格代码
2016/06/15 Javascript
JavaScript中boolean类型之三种情景实例代码
2016/11/21 Javascript
原生ajax处理json格式数据的实例代码
2016/12/25 Javascript
AngularJS获取json数据的方法详解
2017/05/27 Javascript
React Native 图片查看组件的方法
2018/03/01 Javascript
JS实现简单随机3D骰子
2019/10/24 Javascript
React冒泡和阻止冒泡的应用详解
2020/08/18 Javascript
Vue页面跳转传递参数及接收方式
2020/09/09 Javascript
vue 验证两次输入的密码是否一致的方法示例
2020/09/29 Javascript
Vue——解决报错 Computed property &quot;****&quot; was assigned to but it has no setter.
2020/12/19 Vue.js
如何利用Boost.Python实现Python C/C++混合编程详解
2018/11/08 Python
使用Python实现微信提醒备忘录功能
2018/12/04 Python
Django使用 Bootstrap 样式修改书籍列表过程解析
2019/08/09 Python
python 读取数据库并绘图的实例
2019/12/03 Python
pytorch 利用lstm做mnist手写数字识别分类的实例
2020/01/10 Python
Python Json数据文件操作原理解析
2020/05/09 Python
Django中ORM的基本使用教程
2020/12/22 Python
寻找完美的房车租赁:RVShare
2019/02/23 全球购物
navabi英国:设计师大码女装
2019/06/25 全球购物
什么是Oracle的后台进程background processes?都有哪些后台进程?
2012/04/26 面试题
小学家长评语大全
2014/04/16 职场文书
2014党员整改措施思想汇报
2014/10/07 职场文书
工作期间打牌检讨书范文
2014/11/20 职场文书
Python列表删除重复元素与图像相似度判断及删除实例代码
2021/05/07 Python
React如何创建组件
2021/06/27 Javascript
浅谈MySQL之select优化方案
2021/08/07 MySQL
CSS 实现磨砂玻璃(毛玻璃)效果样式
2023/05/21 HTML / CSS