python 简单异步线程阻塞控制
e = threading.Event()
e.set()
def main():
# 创建异步线程
th1 = threading.Thread(target=keybord_event)
th1.start()
while True:
# 每次主线程检查event情况
e.wait()
print('main')
time.sleep(1)
def stop():
e.clear()
print("stop")
def go():
e.set()
print("run")
def keybord_event():
get = input('p:stop g:go ')
if get == 'p':
stop()
if get == 'g':
go()
time.sleep(1)
# callback
keybord_event()
main()
issue
偶尔发生不能正确callback的情况。