返回顶部
首页 > 资讯 > 后端开发 > Python >Python编程之event对象的用法实例分析
  • 628
分享到

Python编程之event对象的用法实例分析

实例对象Python 2022-06-04 18:06:27 628人浏览 薄情痞子

Python 官方文档:入门教程 => 点击学习

摘要

本文实例讲述了python编程中event对象的用法。分享给大家供大家参考,具体如下: Python提供了Event对象用于线程间通信,它是由线程设置的信号标志,如果信号标志位为假,则线程等待直到信号被其他

本文实例讲述了python编程中event对象的用法。分享给大家供大家参考,具体如下:

Python提供了Event对象用于线程间通信,它是由线程设置的信号标志,如果信号标志位为假,则线程等待直到信号被其他线程设置成真。这一点似乎和windows的event正好相反。 Event对象实现了简单的线程通信机制,它提供了设置信号,清除信号,等待等用于实现线程间的通信。

1.设置信号

使用Event的set()方法可以设置Event对象内部的信号标志为真。Event对象提供了isSet()方法来判断其内部信号标志的状态,当使用event对象的set()方法后,isSet()方法返回真.

2.清除信号

使用Event对象的clear()方法可以清除Event对象内部的信号标志,即将其设为假,当使用Event的clear方法后,isSet()方法返回假

3.等待

Event对象wait的方法只有在内部信号为真的时候才会很快的执行并完成返回。当Event对象的内部信号标志位假时,则wait方法一直等待到其为真时才返回。

可以使用Event让工作线程优雅地退出,示例代码如下:


# make thread exit nicely
class MyThread9(threading.Thread):
  def __init__(self):
    threading.Thread.__init__(self)
  def run(self):
    global event
    while True:
      if event.isSet():
        logging.warning(self.getName() + " is Running")
        time.sleep(2)
      else:
        logging.warning(self.getName() + " stopped")
        break;
event = threading.Event()
event.set()
def Test9():
  t1=[]
  for i in range(6):
    t1.append(MyThread9())
  for i in t1:
    i.start()
  time.sleep(10)
  q =raw_input("Please input exit:")
  if q=="q":
    event.clear()
if __name__=='__main__':
  Test9()

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python进程与线程操作技巧总结》、《Python Socket编程技巧总结》、《Python图片操作技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》

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

--结束END--

本文标题: Python编程之event对象的用法实例分析

本文链接: https://lsjlt.com/news/13568.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Python编程之event对象的用法实例分析
    本文实例讲述了Python编程中event对象的用法。分享给大家供大家参考,具体如下: Python提供了Event对象用于线程间通信,它是由线程设置的信号标志,如果信号标志位为假,则线程等待直到信号被其他...
    99+
    2022-06-04
    实例 对象 Python
  • Python面向对象编程实例分析
    本文小编为大家详细介绍“Python面向对象编程实例分析”,内容详细,步骤清晰,细节处理妥当,希望这篇“Python面向对象编程实例分析”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。什么是面向对象编程(类)利用(...
    99+
    2023-06-29
  • JS中的事件对象Event实例分析
    这篇文章主要讲解了“JS中的事件对象Event实例分析”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“JS中的事件对象Event实例分析”吧!一、什么是事件对...
    99+
    2024-04-02
  • Python面向对象编程入门实例分析
    这篇文章主要讲解了“Python面向对象编程入门实例分析”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Python面向对象编程入门实例分析”吧!一、面向对象和面向过程1.两类软件开发设计方法...
    99+
    2023-07-06
  • C++面向对象编程实例分析
    这篇文章主要介绍“C++面向对象编程实例分析”,在日常操作中,相信很多人在C++面向对象编程实例分析问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”C++面向对象编程实例分析”的疑惑有所帮助!接下来,请跟着小编...
    99+
    2023-06-30
  • Java编程之Synchronized锁住对象的示例分析
    这篇文章主要为大家展示了“Java编程之Synchronized锁住对象的示例分析”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Java编程之Synchronized锁住对象的示例分析”这篇文章...
    99+
    2023-05-30
    java synchronized
  • Android编程学习之抽象类AbsListView用法实例分析
    本文实例讲述了Android编程学习之抽象类AbsListView用法。分享给大家供大家参考,具体如下: 一、继承关系 public abstract class AbsLis...
    99+
    2022-06-06
    抽象 学习 Android
  • JS异步编程Promise对象实例分析
    这篇文章主要介绍“JS异步编程Promise对象实例分析”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“JS异步编程Promise对象实例分析”文章能帮助大家解决问题。1、单线程模型单线程模型指的是,...
    99+
    2023-07-02
  • Android编程之ListPreference用法实例分析
    本文实例讲述了Android编程之ListPreference用法。分享给大家供大家参考,具体如下: 先展示一下效果图,如下所示: 项目代码如下: package c...
    99+
    2022-06-06
    Android
  • Android编程之ActionBar Tabs用法实例分析
    本文实例讲述了Android编程之ActionBar Tabs用法。分享给大家供大家参考,具体如下: 这里主要实现用Tab切换不同的Fragment,点击View显示or隐藏A...
    99+
    2022-06-06
    actionbar tabs Android
  • js面向对象编程的示例分析
    小编给大家分享一下js面向对象编程的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!//定义Circle类,拥有成员变量r...
    99+
    2024-04-02
  • Android编程之监听器用法实例分析
    本文实例讲述了Android编程之监听器用法。分享给大家供大家参考,具体如下: 这里通过监听内容提供者数据变化和监听发送短信进行讲解监听器。如果用户提供者数据发生了变化,监听器...
    99+
    2022-06-06
    程之 监听 监听器 Android
  • Android编程之listView中checkbox用法实例分析
    本文实例讲述了Android编程之listView中checkbox用法。分享给大家供大家参考,具体如下: 我们经常会用到在listView中使用checkbox的情况。直接不...
    99+
    2022-06-06
    checkbox listview Android
  • Android编程之Button控件用法实例分析
    本文实例讲述了Android编程之Button控件用法。分享给大家供大家参考,具体如下: 一、Button概述 android.widget.Button直接继承于androi...
    99+
    2022-06-06
    button Android
  • AngularJs之$scope对象的示例分析
    这篇文章主要为大家展示了“AngularJs之$scope对象的示例分析”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“AngularJs之$scope对象的示例...
    99+
    2024-04-02
  • C++对象的销毁之析构函数实例分析
    本文小编为大家详细介绍“C++对象的销毁之析构函数实例分析”,内容详细,步骤清晰,细节处理妥当,希望这篇“C++对象的销毁之析构函数实例分析”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。一、对象的销毁生活中的对象...
    99+
    2023-06-30
  • Java面向对象之多态实例分析
    这篇文章主要介绍“Java面向对象之多态实例分析”,在日常操作中,相信很多人在Java面向对象之多态实例分析问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Java面向对象之多态实例分析”的疑惑有所帮助!接下来...
    99+
    2023-06-30
  • Android编程布局(Layout)之AbsoluteLayout用法实例分析
    本文实例讲述了Android编程布局(Layout)之AbsoluteLayout用法。分享给大家供大家参考,具体如下: AbsoluteLayout,顾名思义,就是绝对位置的...
    99+
    2022-06-06
    布局 Android
  • Android编程之TabWidget选项卡用法实例分析
    本文实例讲述了Android编程之TabWidget选项卡用法。分享给大家供大家参考,具体如下: 1 概览 TabWidget与TabHost。tab组件一般包括TabHost...
    99+
    2022-06-06
    Android
  • JavaScript对象、对象属性、对象方法的示例分析
    这篇文章主要介绍JavaScript对象、对象属性、对象方法的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!JavaScript 变量是数据值的容器。 这段代码把一个单一值...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作