python基于event实现线程间通信控制


Posted in Python onJanuary 13, 2020

这篇文章主要介绍了python基于event实现线程间通信控制,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

import threading,time
class Boss(threading.Thread):
  def run(self):
    print("We must work today!")
    event.isSet() or event.set()
    time.sleep(5)
    print("You can go home right now!")
    event.isSet() or event.set()

class Worker(threading.Thread):
  def run(self):
    event.wait()
    print("Oh,my god!!!")
    time.sleep(1)
    event.clear()
    event.wait()
    print("Oh,yeah!!!")
if __name__ == "__main__":
  event = threading.Event()
  threads = []
  for i in range(5):
    threads.append(Worker())
  threads.append(Boss())
  for t in threads:
    t.start()
  for t in threads:
    t.join()

运行后显示:

We must work today!
Oh,my god!!!
Oh,my god!!!
Oh,my god!!!
Oh,my god!!!
Oh,my god!!!
You can go home right now!
Oh,yeah!!!
Oh,yeah!!!
Oh,yeah!!!
Oh,yeah!!!
Oh,yeah!!!

Process finished with exit code 0

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python 文件与目录操作
Dec 24 Python
Python多线程编程(七):使用Condition实现复杂同步
Apr 05 Python
利用Python实现颜色色值转换的小工具
Oct 27 Python
Python实现读取文件最后n行的方法
Feb 23 Python
Python简单实现控制电脑的方法
Jan 22 Python
numpy.delete删除一列或多列的方法
Apr 03 Python
带你彻底搞懂python操作mysql数据库(cursor游标讲解)
Jan 06 Python
Pycharm内置终端及远程SSH工具的使用教程图文详解
Mar 19 Python
pycharm远程连接vagrant虚拟机中mariadb数据库
Jun 05 Python
scrapy利用selenium爬取豆瓣阅读的全步骤
Sep 20 Python
Python之字典对象的几种创建方法
Sep 30 Python
scrapy在python爬虫中搭建出错的解决方法
Nov 22 Python
pytorch 实现张量tensor,图片,CPU,GPU,数组等的转换
Jan 13 #Python
python、PyTorch图像读取与numpy转换实例
Jan 13 #Python
pytorch 彩色图像转灰度图像实例
Jan 13 #Python
Ranorex通过Python将报告发送到邮箱的方法
Jan 12 #Python
python opencv实现信用卡的数字识别
Jan 12 #Python
Python 实现递归法解决迷宫问题的示例代码
Jan 12 #Python
Python3.x+迅雷x 自动下载高分电影的实现方法
Jan 12 #Python
You might like
那些年一起学习的PHP(三)
2012/03/22 PHP
PHP将字符分解为多个字符串的方法
2014/11/22 PHP
PHP获取数组最后一个值的2种方法
2015/01/21 PHP
PHP的Yii框架中YiiBase入口类的扩展写法示例
2016/03/17 PHP
利用PHP访问MySql数据库的逻辑操作以及增删改查的实例讲解
2017/08/30 PHP
JQuery小知识
2010/10/15 Javascript
JavaScript动态创建div属性和样式示例代码
2013/10/09 Javascript
js根据日期判断星座的示例代码
2014/01/23 Javascript
node.js中Socket.IO的进阶使用技巧
2014/11/04 Javascript
jQuery头像裁剪工具jcrop用法实例(附演示与demo源码下载)
2016/01/22 Javascript
浅析BootStrap栅格系统
2016/06/07 Javascript
关于jQuery EasyUI 中刷新Tab选项卡后一个页面变形的解决方法
2017/03/02 Javascript
bootstrap响应式导航条模板使用详解(含下拉菜单,弹出框)
2017/11/17 Javascript
Vue实现web分页组件详解
2017/11/28 Javascript
Vue+Flask实现简单的登录验证跳转的示例代码
2018/01/13 Javascript
vue实现侧边栏导航效果
2019/10/21 Javascript
[01:02:48]2018DOTA2亚洲邀请赛小组赛 A组加赛 Newbee vs Liquid
2018/04/03 DOTA
python生成器的使用方法
2013/11/21 Python
python操作CouchDB的方法
2014/10/08 Python
在Python中用split()方法分割字符串的使用介绍
2015/05/20 Python
Python的matplotlib绘图如何修改背景颜色的实现
2019/07/16 Python
python tkinter库实现气泡屏保和锁屏
2019/07/29 Python
Django单元测试工具test client使用详解
2019/08/02 Python
Python 异步协程函数原理及实例详解
2019/11/13 Python
Python 实现国产SM3加密算法的示例代码
2020/09/21 Python
jupyter 添加不同内核的操作
2021/02/06 Python
英国手工制作的现代与经典的沙发和床:Love Your Home
2020/09/26 全球购物
铭立家具面试题
2012/12/06 面试题
广州喜创信息技术有限公司JAVA软件工程师笔试题
2012/10/17 面试题
2014国庆65周年领导讲话稿(3篇)
2014/09/21 职场文书
ktv服务员岗位职责
2015/02/09 职场文书
2015七夕情人节宣传语
2015/07/14 职场文书
《世界多美呀》教学反思
2016/02/22 职场文书
Redis 哨兵机制及配置实现
2022/03/25 Redis
JS轻量级函数式编程实现XDM二
2022/06/16 Javascript
Python 读取千万级数据自动写入 MySQL 数据库
2022/06/28 Python