python线程间通信方法Event

线程间通信方法

1.通信方法

线程间使用全局变量进行通信

2.共享资源争夺

  • 共享资源:多个进程或者线程都可以操作的资源称为共享资源。
    对共享资源的操作代码段称为临界区
  • 影响;对共享资源的无序操作可能会带来数据的混乱,或者操作错误。此时往往需要同步互斥机制协调操作顺序

3.同步互斥机制

  • 同步:同步是一种协作关系,为完成操作,多进程或者线程间形成一种协调,按照
    必要的步骤有序执行操作
  • 互斥:互斥是一种制约关系,当一个进程或者线程占有资源时会进行加锁处理,此时其他进程线程就无法操作该资源,直到解锁后才能操作
"""
event 线程互斥方法
"""
from threading import Thread,Event

s=None #用于通信
e=Event() #事件对象

def fun():
    print("fun")
    global s
    s="fun"
    e.set() #操作完共享资源 e设置

t=Thread(target=fun)
t.start()

e.wait()#阻塞等待
if s=="fun":
    print("执行了fun函数")
else:
    print("什么也没执行")

t.join()

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Bruce-li__

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值