python线程间通信方法Event

python线程间通信方法Event,第1张

线程间通信方法 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()

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/791320.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-05
下一篇 2022-05-05

发表评论

登录后才能评论

评论列表(0条)

保存