flask中沒有提供可以完成此類型功能的方法, 最后使用python多線程的方式做的該功能
直接調用線程是不能用的, 需要用kwargs傳參, 什么原因暫時還沒搞明白, 詳情見代碼:
@app.route('/start_task')
def start_task():
def do_work(value):
# do something that takes a long time
import time
time.sleep(value)
thread = Thread(target=do_work, kwargs={'value': request.args.get('value', 20)})
thread.start()
return 'started'
詳情可以通過以下連接查閱
相關文章 : Flask返回響應后執行函數-python黑洞網