【发布时间】:2016-07-02 19:45:26
【问题描述】:
在 CherryPy 中,每个请求都在一个线程中运行,并且该线程可以通过cherrypy.session 访问会话对象。如果您从该请求线程启动另一个线程,从而允许请求返回,则您不再有权访问该会话对象。有没有办法解决这个问题?
我有一个在用户加载特定页面时运行的函数。在某些情况下,此功能可能需要一些时间(例如 10 秒左右)才能运行。此函数的结果不直接用于页面渲染,而是存储在用户会话对象中,以供用户单击按钮时(即时)检索。我不想让用户等待数据被编译,我想将此函数卸载到后台线程并让主线程将页面返回给用户,但是当我这样做时,我不再有权访问用户会话对象来存储结果。我该如何解决这个问题?谢谢。
【问题讨论】:
标签: multithreading session cherrypy