我正在构建一个烧录应用程序,提示用户输入他/她的电子邮件和输入文件。当用户同时输入它们时,我在此输入文件上运行脚本。现在这个脚本需要花费大量的时间来执行。我想将此脚本评估的结果邮寄给用户。但是,只要脚本正在执行,我的页面就会冻结。我希望我的用户能够转到另一个页面,显示他的响应已被提交以进行处理,并且他将在一段时间内邮寄它,而不是在脚本执行时被卡在页面上。任何线索将不胜感激
答案 0 :(得分:0)
我最终使用了python中提供的Threading module
,实现非常简单,生成一个新线程,负责渲染重定向页面,主线程将执行我的脚本。如果有人需要,
class Mythread(threading.Thread):
def __init__(self, params):
threading.Thread.__init__(self)
self.h = i
self.params = params
def run(self):
time.sleep(1)
# do expensive work, your time taking script
我将其称为:
thread1 = Mythread(1, params)
thread1.start()
return open('redirectpage.html')
这样,只要脚本运行
,我的页面就不会挂起