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实现strcmp函数功能示例
Mar 25 Python
python中PIL安装简单教程
Apr 21 Python
Python教程之全局变量用法
Jun 27 Python
python解决网站的反爬虫策略总结
Oct 26 Python
20行python代码实现人脸识别
May 05 Python
Python增强赋值和共享引用注意事项小结
May 28 Python
Python Pandas数据结构简单介绍
Jul 03 Python
详解pycharm连接不上mysql数据库的解决办法
Jan 10 Python
Python Selenium自动化获取页面信息的方法
Aug 31 Python
python字典通过值反查键的实现(简洁写法)
Sep 30 Python
Python3中FuzzyWuzzy库实例用法
Nov 18 Python
利用Python实时获取steam特惠游戏数据
Jun 25 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 CURL模拟GET及POST函数代码
2010/04/25 PHP
PHP Curl多线程原理实例详解
2013/11/06 PHP
List Information About the Binary Files Used by an Application
2007/06/18 Javascript
DWR Ext 加载数据
2009/03/22 Javascript
extJs 文本框后面加上说明文字+下拉列表选中值后触发事件
2009/11/27 Javascript
Javascript写入txt和读取txt文件示例
2014/02/12 Javascript
不使用ajax实现无刷新提交表单
2014/12/21 Javascript
JavaScript的设计模式经典之代理模式
2016/02/24 Javascript
JavaScript判断浏览器和hack滚动条的写法
2017/07/23 Javascript
vue-scroller记录滚动位置的示例代码
2018/01/17 Javascript
解决Mac node版本升级失败的问题
2018/05/16 Javascript
vue下history模式刷新后404错误解决方法
2018/08/18 Javascript
Vue 前端实现登陆拦截及axios 拦截器的使用
2019/07/17 Javascript
vue实现短信验证码输入框
2020/04/17 Javascript
python进阶教程之循环相关函数range、enumerate、zip
2014/08/30 Python
Python使用py2exe打包程序介绍
2014/11/20 Python
Python合并多个装饰器小技巧
2015/04/28 Python
python中as用法实例分析
2015/04/30 Python
Python实现完整的事务操作示例
2017/06/20 Python
Python模拟简单电梯调度算法示例
2018/08/20 Python
python 为什么说eval要慎用
2019/03/26 Python
PyQt5固定窗口大小的方法
2019/06/18 Python
Python数据类型之列表和元组的方法实例详解
2019/07/08 Python
pytorch实现用CNN和LSTM对文本进行分类方式
2020/01/08 Python
给 TensorFlow 变量进行赋值的方式
2020/02/10 Python
Python如何安装第三方模块
2020/05/28 Python
Python计算信息熵实例
2020/06/18 Python
如何真正的了解python装饰器
2020/08/14 Python
彪马加拿大官网:PUMA加拿大
2018/10/04 全球购物
信息专业学生学习的自我评价
2014/02/17 职场文书
教师党员公开承诺事项
2014/05/28 职场文书
英语三分钟演讲稿
2014/08/19 职场文书
辛亥革命观后感
2015/06/02 职场文书
奠基仪式致辞
2015/07/30 职场文书
2016公司新年问候语
2015/11/11 职场文书
基于Redission的分布式锁实战
2022/08/14 Redis