flask通過線程池實現異步


 

from flask import Flask
from time import sleep
from concurrent.futures import ThreadPoolExecutor
# DOCS https://docs.python.org/3/library/concurrent.futures.html#concurrent.futures.ThreadPoolExecutor
# 創建線程池執行器
executor = ThreadPoolExecutor(2)

app = Flask(__name__)
@app.route('/jobs')
def run_jobs():
 # 交由線程去執行耗時任務
 executor.submit(long_task, 'hello', 123)
 return 'long task running.'


# 耗時任務
def long_task(arg1, arg2):
 print("args: %s %s!" % (arg1, arg2))
 for i in range(10):
     sleep(1)
     print("Task is done!")


if __name__ == '__main__':
 app.run()

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM