Son*_*yen 6 python callback python-multithreading
我有 Thread,我想在它完成时更改一些标志。例如:
import threading
def on_done():
# do some printing or change some flags
def worker():
# do some calculations
t = threading.Thread(target=worker, on_close=on_done)
t.start()
Run Code Online (Sandbox Code Playgroud)
但我无法找到这样的方法。任何想法我怎么能以某种方式管理它?工作函数在单独的文件中,所以它不知道关于标志。
提前谢谢
一种选择是简单地包装工作函数:
def wrapped_worker():
worker()
on_done()
Run Code Online (Sandbox Code Playgroud)
然后,将目标设置为wrapped_worker:
t = threading.Thread(target=wrapped_worker, on_close=on_done)
Run Code Online (Sandbox Code Playgroud)
有关更深入的示例,请参阅此答案。
| 归档时间: |
|
| 查看次数: |
6016 次 |
| 最近记录: |