gpt4 book ai didi

python - 如何在线程中使用 python 中的事件对象?

转载 作者:太空宇宙 更新时间:2023-11-03 11:01:38 24 4
gpt4 key购买 nike

我有一个主要的 python 脚本,它启动一个在后台运行的线程。

poll = threading.Thread(target=poll_files, args=myargs)

我希望我的主脚本一直等到我的 poll 线程中发生特定的事情。我想使用一个事件对象。所以在我的主脚本中,我这样做:

trigger = threading.Event()

当我想等待时:

trigger.wait()

我的问题是,在我的 poll 线程中,如何将 Event 设置为 True?我知道我这样做:

trigger.set()

但是我是否还需要在我的poll线程中有trigger = threading.Event()

最佳答案

Event 对象传递给线程目标函数,以便它们在主线程和 pool 线程之间共享:

def poll_files(....., trigger):
....
trigger.set()

# main thread
trigger = threading.Event()
poll = threading.Thread(target=poll_files, args=myargs + (trigger,))
...
trigger.wait()

关于python - 如何在线程中使用 python 中的事件对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31247820/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com