我正在创建一个Flask应用程序,对于某个请求,我需要运行一些不需要等待UI的长时间运行的作业。我将创建一个线程并向UI发送消息。 线程将计算并更新数据库。 但是,提交后UI将看到一条消息。 以下是我的实现,但它先运行线程,然后发送输出到UI,这不是我想要的方式。 我该如何在后台运行此线程?
@app.route('/someJob')
def index():
t1 = threading.Thread(target=long_running_job)
t1.start()
return 'Scheduled a job'
def long_running_job
#some long running processing here
如何使线程t1在后台运行并立即返回消息?
some_long_task1
或some_long_task2
引发异常会怎么样?我写了类似的代码,但发现异常被抑制了。 - secsilm