线程事件--day36
""" ----线程事件---- 是用于协调多个线程工作的,当一个线程要执行某个操作,需要获取另一个线程的状态 你要给别人打电话 必须明确知道对方手机买好了 作为客户端 要连接服务器 必须明确服务器已经启动了,那么作为启动服务器的一方 如何告知客户端? 就通过事件"""
import time from threading import Thread from threading import Event# 用Event创建一个事件 e = Event() # 默认Falsedef start():print("正在启动服务器......")time.sleep(5)print("服务器启动成功!")e.set() # 就是把事件的值设置为Truedef connect():# 重试3次for i in range(3):print("等待服务器启动....")# 设置等待时间e.wait(2) # 会阻塞 直到对方把事件设置为True# 判断Event 是否可以执行if e.isSet():print("连接成功!")breakelse:print("连接失败")else: # 如果3次都没成功 就打印这个消息print("服务器没有启动")Thread(target=start).start() Thread(target=connect).start()
转载于:https://www.cnblogs.com/wenchen/p/10221211.html
线程事件--day36相关推荐
- Python 线程----线程方法,线程事件,线程队列,线程池,GIL锁,协程,Greenlet
主要内容: 线程的一些其他方法 线程事件 线程队列 线程池 GIL锁 协程 Greenlet Gevent 一. 线程(threading)的一些其他方法 from threading import ...
- Python 线程事件 Event - Python零基础入门教程
目录 一.Python 线程事件 Event 函数介绍 二.Python 线程事件 Event 原理 三.Python 线程事件 Event 使用 四.重点总结 五.猜你喜欢 零基础 Python 学 ...
- java 线程 事件_Java事件调度线程解释
我最近开始学习和探索Java编程的基础知识. 已经编程了一段时间,我只做了后端工作或工作,因此最接近我已经得到用户界面是命令控制台(我知道的尴尬). 我使用Swing,就我可以收集这意味着通过扩展我也 ...
- windows线程 事件CreateEvent、SetEvent、ResetEvent、CloseHandle
事件 相关问题 程序之前的通知的问题 事件的使用 1.创建事件 HANDLE CreateEvent( LPSECURITY_ATTRIBUTES lpEventAttributes,//事件安全属性 ...
- GIL , 线程池 , 同步 , 异步 , 队列 , 事件
一.什么是GIL 官方解释: ''' In CPython, the global interpreter lock, or GIL, is a mutex that prevents multipl ...
- input 输入事件_输入超时为例学习 Python 的线程和协程
需求:做一个程序等待用户输入,3秒内输入则会 echo 这个输入并立即退出.3秒内没输入则自动退出. 实现方法: 1. 线程(错误示范) import 首先启动两个线程,并把等待输入的 get_inp ...
- Qt线程、事件与QObject
线程.事件与QObject 敬告:测试版本 原文连接:http://m.blog.csdn.net/blog/shang322/9344475# 本译文接近定稿,但还须一些加工和更好的例子.欢迎任何评 ...
- Swing 的任务线程与 EDT 事件分发队列模型
1 现象及问题 在Swing程序中,经常能看到如下这种代码: 为何用invokeLater,而不直接调用呢? 大多数Swing的API非线程安全,不能在任意地方调用,应该只在EDT中调用. Swing ...
- 【转载】浏览器事件循环机制(event loop)
首先,本文转自https://juejin.im/post/5afbc62151882542af04112d 当我看完菲利普·罗伯茨的 javascript event loop的演讲的时候,就对于事 ...
最新文章
- Java :BufferedWriter类和BufferedReader类的构造方法、主要方法
- 【 压缩感知 】OMP恢复算法
- springboot打Jar包和War包
- metabase 以链接或图片查看_Python下载微信公众号文章内的图片
- [转]C++中sleep()函数的使用
- 实时通信:使用Spring Boot实现Websocket
- Restful API 设计
- 网友希望一加7像iPhone XR一样流畅 刘作虎:iPhone很卡
- 解决Linux操作系统下SSH等终端乱码问题
- 2016年零售业CIO的七大革命性挑战
- oracle wip 拆解工单 操作_错过血亏!一文搞懂Oracle锁相关视图及相关操作
- ISL22346WFRT20Z-TK 数字电位器 4路 I²C
- Ubuntu开机无桌面图标
- 回收测试JInternalFrame
- (DINO) Emerging Properties in Self-Supervised Vision Transformers——自监督ViT的新属性和几点思考
- No country for old men 老无所依,从奥斯卡来说,我无所依
- 升级cuda10.2+pytorch+cudnn
- HTTP请求方法介绍
- 15-Puzzle Problem
- 如何通过自己的app打开twitter的指定功能
热门文章
- 使用代码获得Netweaver里某个software component和C4C的版本
- 如何在SAP云平台上使用MongoDB服务 1
- 软件测试理论入门(一)
- 画箱线图_箱线图的N种画法
- python io包_关于python中的IO流
- linux系统盘比较小,35M的中文linux硬盘简单安装方法Live-CD:SliTaz.tw-全世界最小的li...
- java for 循环执行顺序
- php多态性和继承是什么意思,封装 继承 多态的区别
- r与python自然语言处理_Python自然语言处理实践: 在NLTK中使用斯坦福中文分词器 | 我爱自然语言处理...
- Linux中gsub函数,Linux中awk下 gsub函数用法