use*_*200 5 python events python-multithreading
我有一个主要的 python 脚本,它启动一个在后台运行的线程。
poll = threading.Thread(target=poll_files, args=myargs)
我希望我的主脚本等到我的poll线程中发生特定的事情。我想使用一个 Event 对象。所以在我的主脚本中,我这样做:
trigger = threading.Event()
当我想等待时:
trigger.wait()
我的问题是,在我的poll线程中,如何将事件设置为 True?我知道我这样做:
trigger.set()
但我还需要trigger = threading.Event()在我的poll线程里面吗?
fal*_*tru 10
将Event对象传递给线程目标函数,以便它们在主线程和线程之间共享pool:
def poll_files(....., trigger):
....
trigger.set()
# main thread
trigger = threading.Event()
poll = threading.Thread(target=poll_files, args=myargs + (trigger,))
...
trigger.wait()
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5985 次 |
| 最近记录: |