楼主: 时光人
1088 1

[网帖精选] python学习笔记8-python多线程之事件(Event) [推广有奖]

  • 3关注
  • 34粉丝

已卖:165份资源

院士

23%

还不是VIP/贵宾

-

威望
1
论坛币
26913 个
通用积分
429.8724
学术水平
95 点
热心指数
109 点
信用等级
91 点
经验
39970 点
帖子
1630
精华
3
在线时间
580 小时
注册时间
2019-2-25
最后登录
2025-5-6

楼主
时光人 学生认证  发表于 2019-10-11 09:08:46 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币

AIU人工智能学院:数据科学、人工智能从业者的在线大学。

数据科学(Python/R/Julia)数据分析、机器学习、深度学习

小伙伴a,b,c围着吃火锅,当菜上齐了,请客的主人说:开吃!,于是小伙伴一起动筷子,这种场景如何实现

一、 Event(事件)

Event(事件):事件处理的机制:全局定义了一个内置标志Flag,如果Flag值为 False,那么当程序执行 event.wait方法时就会阻塞,如果Flag值为True,那么event.wait 方法时便不再阻塞。

Event其实就是一个简化版的 Condition。Event没有锁,无法使线程进入同步阻塞状态。

Event

- set: 将标志设为True,并通知所有处于等待阻塞状态的线程恢复运行状态。

- clear: 将标志设为False。

- wait(timeout): 如果标志为True将立即返回,否则阻塞线程至等待阻塞状态,等待其他线程调用set。

- isSet: 获取内置标志状态,返回True或False。

二、 Event案例1

场景:小伙伴a和b准备就绪,当收到通知event.set的时候,会执行a和b线程

运行结果:

Thread-1 已经启动

小伙伴 a 已经进入就餐状态!

Thread-2 已经启动

小伙伴 b 已经进入就餐状态!

主线程通知小伙伴开吃咯!

Thread-1 收到通知了.

小伙伴 a 开始吃咯!

Thread-2 收到通知了.

小伙伴 b 开始吃咯!

二、 Event案例2

场景:当小伙伴a,b,c集结完毕后,请客的人发话:开吃咯!

运行结果:

Thread-1 已经启动

小伙伴 a 已经进入就餐状态!

Thread-2 已经启动

小伙伴 b 已经进入就餐状态!

Thread-3 已经启动

小伙伴 c 已经进入就餐状态!

YOYO:集合完毕,人员到齐了,开吃咯!

Thread-1 收到通知了.

1516779534.13 小伙伴 a 开始吃咯!

Thread-3 收到通知了.Thread-2 收到通知了.

1516779534.13 小伙伴 c 开始吃咯!1516779534.13 小伙伴 b 开始吃咯!


二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:python Event 学习笔记 vent Even

回帖推荐

yunnandlg 发表于2楼  查看完整内容

Courage is daring to do what is right in spite of the weakness of our flesh. 真正的勇敢意味着即便身处险境,也勇于匡扶正义。 多谢分享
已有 1 人评分经验 收起 理由
yunnandlg + 100 精彩帖子

总评分: 经验 + 100   查看全部评分

沙发
yunnandlg 在职认证  学生认证  发表于 2019-10-11 16:22:52
Courage is daring to do what is right in spite of the weakness of our flesh.
真正的勇敢意味着即便身处险境,也勇于匡扶正义。


多谢分享

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-22 04:28