Python Bokeh服务器:定期回调以异步重新加载数据?

Python Bokeh服务器:定期回调以异步重新加载数据?,python,server,bokeh,Python,Server,Bokeh,我想在我的Bokeh服务器中安排一个周期性的非阻塞任务,比如在必要时重新加载数据(无需重新启动服务器) 有一些函数可以安排定期任务,例如,它是在会话级别(文档)而不是在应用程序代码中 如何在应用程序代码级别执行此操作?我不希望每次会话都重新加载数据,这项操作只需一次性完成 我尝试过使用龙卷风周期回调,但最终我遇到了比赛条件,如本罚单所述: 谢谢我使用curdoc()。添加定期回调(data\u load\u func,86400000),尽管在数据加载之后,会话不再响应,需要重新加载。 # ex

我想在我的Bokeh服务器中安排一个周期性的非阻塞任务,比如在必要时重新加载数据(无需重新启动服务器)

有一些函数可以安排定期任务,例如,它是在会话级别(文档)而不是在应用程序代码中

如何在应用程序代码级别执行此操作?我不希望每次会话都重新加载数据,这项操作只需一次性完成

我尝试过使用龙卷风周期回调,但最终我遇到了比赛条件,如本罚单所述:

谢谢

我使用curdoc()。添加定期回调(data\u load\u func,86400000),尽管在数据加载之后,会话不再响应,需要重新加载。
# example of bad code using Tornado, which creates race condition

...
# see below: my_func_to_reload_data_async() is used to reload data asynchronously

bokeh_server.start()
from tornado.ioloop import PeriodicCallback
pcallback = PeriodicCallback(my_func_to_reload_data_async, 3000, io_loop=bokeh_server.io_loop)
pcallback.start()
bokeh_server.io_loop.start()