python线程里哪种模块比较适合


Posted in Python onAugust 02, 2020

在Python中可使用的多线程模块主要有两个,thread和threading模块。thread模块提供了基本的线程和锁的支持,建议新手不要使用。threading模块允许创建和管理线程,提供了更多的同步原语。

thread模块函数:

  • start_new_thread(function, args[, kwargs]):启动新的线程以执行function,返回线程标识。
  • allocate_lock():返回LockType对象。
  • exit():抛出SystemExit异常,如果没有被捕获,线程静默退出。
  • LockType类型锁对象的方法:
  • acquire([waitflag]):无参数,无条件获得锁,如果锁已经被其他线程获取,则等待锁被释放。如果使用整型参数,参数为0,如果锁可获取,则获取且返回True,否则返回False;参数为非0,与无参数相同。
  • locked():返回锁的状态,如果已经被获取,则返回True,否则返回False。
  • release():释放锁。只有已经被获取的锁才能被释放,不限于同一个线程。
  • threading模块提供了更好的线程间的同步机制。threading模块下有如下对象:
  • Thread
  • Lock
  • RLock
  • Condition
  • Event
  • Semaphore
  • BoundedSemaphore
  • Timer
  • threading模块内还有如下的函数:
  • active_count()
  • activeCount():返回当前alive的线程数量
  • Condition():返回新的条件变量对象
  • current_thread()
  • currentThread():返回当前线程对象
  • enumerate():返回当前活动的线程,不包括已经结束和未开始的线程,包括主线程及守护线程。
  • settrace(func):为所有线程设置一个跟踪函数。
  • setprofile(func):为所有纯种设置一个profile函数。

内容扩展:

Python线程模块

常用参数说明

  • target 表示调用对象,几子线程要执行的的任务
  • name 子线程的名称
  • args 传入target函数中的位置参数,是一个元组,参数后必须加逗号

常用的方法

  • Thread.star(self)启动进程
  • Thread.join(self)阻塞进程,主线程等待
  • Thread.setDaemon(self,daemoic) 将子线程设置为守护线程
  • Thread.getName(self.name) 获取线程名称
  • Thread.setName(self.name) 设置线程名称
import time
from threading import Thread
 
 
def hello(name):
  print('hello {}'.format(name))
  time.sleep(3)
  print('hello bye')
 
def hi():
  print('hi')
  time.sleep(3)
  print('hi bye')
 
if __name__ == '__main__':
 
  hello_thread = Thread(target=hello, args=('wan zong',),name='helloname') #target表示调用对象。name是子线程的名称。args 传入target函数中的位置参数,是个元组,参数后必须加逗号
  hi_thread = Thread(target=hi)
 
  hello_thread.start() #开始执行线程任务,启动进程
  hi_thread.start()
 
  hello_thread.join() #阻塞进程 等到进程运行完成 阻塞调用,主线程进行等待
  hi_thread.join()
 
  print(hello_thread.getName())
  print(hi_thread.getName()) #会默认匹配名字
 
  hi_thread.setName('hiname')
  print(hi_thread.getName())
 
  print('主线程运行完成!')

到此这篇关于python线程里哪种模块比较适合的文章就介绍到这了,更多相关python线程用什么模块好内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python条件和循环的使用方法
Nov 01 Python
python求列表交集的方法汇总
Nov 10 Python
Python的Django框架中的表单处理示例
Jul 17 Python
Python 如何访问外围作用域中的变量
Sep 11 Python
python实现二叉查找树实例代码
Feb 08 Python
python通过微信发送邮件实现电脑关机
Jun 20 Python
python排序函数sort()与sorted()的区别
Sep 18 Python
python无限生成不重复(字母,数字,字符)组合的方法
Dec 04 Python
PyCharm中代码字体大小调整方法
Jul 29 Python
python requests库爬取豆瓣电视剧数据并保存到本地详解
Aug 10 Python
Python3 pandas 操作列表实例详解
Sep 23 Python
python 无损批量压缩图片(支持保留图片信息)的示例
Sep 22 Python
python缩进长度是否统一
Aug 02 #Python
Python接收手机短信的代码整理
Aug 02 #Python
Python改变对象的字符串显示的方法
Aug 01 #Python
Python 如何定义匿名或内联函数
Aug 01 #Python
Python sqlalchemy时间戳及密码管理实现代码详解
Aug 01 #Python
Python如何读写二进制数组数据
Aug 01 #Python
Python将字典转换为XML的方法
Aug 01 #Python
You might like
PHP的分页功能
2007/03/21 PHP
PHP编实现程动态图像的创建代码
2008/09/28 PHP
DHTML 中的绝对定位
2006/11/26 Javascript
JavaScript创建类/对象的几种方式概述及实例
2013/05/06 Javascript
js获取和设置属性的方法
2014/02/20 Javascript
JQuery实现级联下拉框效果实例讲解
2015/09/17 Javascript
jQuery validate验证插件使用详解
2016/05/11 Javascript
JSON字符串转换JSONObject和JSONArray的方法
2016/06/03 Javascript
jQuery实现的自定义弹出层效果实例详解
2016/09/04 Javascript
js获取隐藏元素的宽高
2017/02/24 Javascript
微信小程序 flex实现导航实例详解
2017/04/26 Javascript
详解Webpack DLL用法以及功能
2017/07/11 Javascript
JS实现带动画的回到顶部效果
2017/12/28 Javascript
Vue全局分页组件的实现代码
2018/08/10 Javascript
基于Vue 服务端Cookies删除的问题
2018/09/21 Javascript
vue源码nextTick使用及原理解析
2019/08/13 Javascript
Layui给switch添加响应事件的例子
2019/09/03 Javascript
JS使用H5实现图片预览功能
2019/09/30 Javascript
vue路由结构可设一层方便动态添加路由操作
2020/08/31 Javascript
Vue中使用Echarts仪表盘展示实时数据的实现
2020/11/01 Javascript
JS实现手风琴特效
2020/11/08 Javascript
vue+openlayers绘制省市边界线
2020/12/24 Vue.js
Python 列表list使用介绍
2014/11/30 Python
python条件变量之生产者与消费者操作实例分析
2017/03/22 Python
Python基于ThreadingTCPServer创建多线程代理的方法示例
2018/01/11 Python
在Pycharm中对代码进行注释和缩进的方法详解
2019/01/20 Python
Python 旋转打印各种矩形的方法
2019/07/09 Python
美国流行背包品牌:JanSport(杰斯伯)
2018/03/02 全球购物
Currentbody美国/加拿大:美容仪专家
2020/03/09 全球购物
英国最大的在线亚洲杂货店:Red Rickshaw
2020/03/22 全球购物
求职自荐信
2013/12/14 职场文书
家居饰品店创业计划书
2014/01/31 职场文书
研究生求职自荐书
2014/06/23 职场文书
研究生个人学年总结
2015/02/14 职场文书
法学专业求职信范文
2015/03/19 职场文书
《陶罐和铁罐》教学反思
2016/03/03 职场文书