我有一個 Flask 應用程式,其視圖功能設定如下(MWE):
from flask import redirect
import time, random
def quick_processing_function():
return True
def long_processing_function():
time.sleep(15)
return random.rand() < 0.99
@app.route('target')
def function():
result = quick_processing_function()
if result:
long_processing_function_that_may_fail()
return redirect(SOME_EXTERNAL_SITE)
我不想long_processing_function_that_may_fail()延遲重定向到外部站點的服務,特別是如果它無法完成。但它必須運行。理想情況下,long_processing_function_that_may_fail()將在重定向發送給用戶后運行。滿足這些要求的最佳方法是什么?
uj5u.com熱心網友回復:
您可以在單獨的執行緒中進行
from flask import redirect
import threading
import time, random
def quick_processing_function():
return True
def long_processing_function():
time.sleep(15)
return random.rand() < 0.99
@app.route('target')
def function():
result = quick_processing_function()
if result:
x = threading.Thread(target=long_processing_function_that_may_fail, args=())
x.start()
return redirect(SOME_EXTERNAL_SITE)
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/355658.html
標籤:Python 烧瓶 python-多线程
