import threading
import time
def goevent():
e=threading.Event()#事件
def go():
e.wait() #等待,后续代码不再执行,等待set再执行。让线程有序执行
print("go")
threading.Thread(target=go).start()#开启一个线程
return e
t=goevent()
time.sleep(6)
t.set() #激发事件
import threading
import time
def goevent():
e=threading.Event() #事件
def go():
for i in range(5):
e.wait() #等待set(),后面代码不会立即执行,等set()触发后才继续执行。控制线程有序执行。
e.clear() #重置,for下一次循环还会继续等待
print(i,"go")
threading.Thread(target=go).start()
return e
t=goevent()
for i in range(5):
time.sleep(1)
t.set() #通知,触发e.wait()