位置: IT常识 - 正文

python线程中Condition的原理(python线程间通信的几种方法)

编辑:rootadmin

推荐整理分享python线程中Condition的原理(python线程间通信的几种方法),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:python 线程,python多线程condition,python线程的join,python线程的join,Python线程中开启新的进程,python 线程,python 线程,python 线程,内容如对您有帮助,希望把文章链接给更多的朋友!

python线程中Condition的原理(python线程间通信的几种方法)

原理分析

1、Python条件变量Condition需要关联互斥锁,同时Condition本身提供了wait、notify、notifyAll方法。

2、用于阻塞、通知其他并行线程,可以访问共享资源。

Condition提供了一种多线程通信机制。如果线程1需要数据,线程1会堵塞等待,然后线程2会制造数据。线程2制造数据后,通知线程1可以获取数据,然后线程1会获取数据。

实例

#!usr/bin/envpython#-*-coding:utf-8_*-#导入线程模块importthreading#创建条件变量conditioncon=threading.Condition()defthread_one(name):#条件变量condition线程上锁con.acquire()print("{}:成语接龙准备好了吗".format(name))#唤醒正在等待(wait)的线程con.notify()#等待对方回应消息,使用wait阻塞线程,等待对方通过notify唤醒本线程con.wait()print("{}:一干二净".format(name))#唤醒对方con.notify()#等待消息答应con.wait()print("{}:一天就知道看抖音美女,给你来个简单点的,来了:毛手毛脚".format(name))#唤醒对方con.notify()#等待消息答应con.wait()print("{}:哟哟哟,不错不错!".format(name))#唤醒对方con.notify()#条件变量condition线程释放锁con.release()defthread_two(name):#条件变量condition线程上锁con.acquire()#wait阻塞状态,等待其他线程通过notify唤醒本线程con.wait()print("{}:准备好了~开始吧!".format(name))#唤醒对方con.notify()#等待消息答应con.wait()print("{}:净你妹啊,没法接...来个简单点的...".format(name))#唤醒对方con.notify()#等待消息答应con.wait()print("{}:嘿,这个我知道:脚踏实地".format(name))#唤醒对方con.notify()con.release()if__name__=="__main__":#创建并初始化线程t1=threading.Thread(target=thread_one,args=("A"))t2=threading.Thread(target=thread_two,args=("B"))#启动线程--注意线程启动顺序,启动顺序很重要t2.start()t1.start()#阻塞主线程,等待子线程结束t1.join()t2.join()print("程序结束!")'''输出结果:A:成语接龙准备好了吗B:准备好了~开始吧!A:一干二净B:净你妹啊,没法接...来个简单点的...A:一天就知道看抖音美女,给你来个简单点的,来了:毛手毛脚B:嘿,这个我知道:脚踏实地A:哟哟哟,不错不错!程序结束!'''

以上就是python线程中Condition的原理,希望对大家有所帮助。更多Python学习指路:Python基础教程

本文链接地址:https://www.jiuchutong.com/zhishi/312048.html 转载请保留说明!

上一篇:phpcms后台是什么(php cms)

下一篇:织梦免登录自动登录实现方法(织梦网站停止使用了还侵权吗)

  • 个人开发选项
  • 缴纳增值税影响损益吗
  • 金蝶报账怎么报销
  • 行政单位财政直接支付适用范围
  • 财税人员岗位职责
  • 政府回购安置房几种模式
  • 工程款和借款能一起诉讼吗
  • 个人微信转账可以认定劳动关系吗
  • 期末现金及现金等价物余额公式
  • 借款利息支出全部可以税前扣除吗
  • 劳务报酬所得如何计税
  • 清算期间公司不再存续
  • 未确认融资租赁费用是什么类型科目
  • 营业以后再次装修进什么会计科目?
  • 出售商标使用权收入计入什么科目
  • 简易计税是否可以开增值税专用发票
  • 增值税免税收入计入什么科目
  • 学校管理费是什么意思
  • 工程款税款税率
  • 物流行业主营业务成本会计分录
  • 商品和服务税收编码怎么查
  • 小规模建筑安装增值税税率是多少
  • 投入资本公积需要结转吗
  • 小规模印花税怎么报
  • 销售利润率和毛利率计算
  • 为什么可供出售的金融资产是非流动资产
  • 收到一张增值税红冲发票
  • 什么时候不能计入开办费
  • 商品购进核算
  • 电脑桌面上的图片怎么打印
  • 发票已开不符合收入确认条件账务处理怎么做?
  • 城市赚钱项目
  • 80岁以上老年卡上的钱如何消费
  • PHP使用http_build_query()构造URL字符串的方法
  • thinkphp3.2.3
  • 银行贴现利息怎么做账务处理
  • 红字专用发票是红色的吗
  • javascript js
  • vue-axios详细介绍
  • 资产负债表与利润表之间的关系
  • 契税属于哪种说法
  • 进项税额申报表怎么填写
  • mongo聚合查询效率问题
  • 开票软件里税收分类编码在哪更新
  • 绩效工资交个人所得税吗
  • sql server提示不允许保存更改
  • ibm-db2-admin
  • 报关单保费率怎么填
  • 小规模未达起征点销售额是多少
  • 工会经费的开支包括哪些
  • 个人新冠肺炎确诊,要和单位领导说吗
  • 进项抵扣怎么操作
  • 金税盘的维护费怎么报税
  • 电子商务中流量的定义
  • 未开票收入如何计提增值税
  • 收到垫付款计入什么科目
  • 哪些账户期末结账后一定无余额
  • 未开票收入如何申报增值税
  • 购买食品应注意哪些问题?
  • 研发费用人工费用包括
  • 生产成本如何设置明细账
  • mysql数据库详解
  • linux 图形
  • centos 6.5网络设置
  • win7旗舰版用户
  • .fs是什么格式
  • win7系统ie浏览器在哪里
  • cocos2dx-3.2+lua 启动项目小技巧
  • threejs中文文档pdf
  • 解决Android Studio下载gradle慢
  • shutdown命令不能运行
  • Web2.0下XHTML+CSS 设计需要注意的地方小结
  • 批处理的扩展名
  • Shell中使用scp命令实现文件上传代码
  • 能用javascript 最终
  • 税务局投诉举报
  • 打印缴纳社保电子缴税凭证
  • 内蒙古国地税网上办税服务厅
  • 淘宝店铺过户后身份证是谁的
  • 投资损失属于所得税吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设