当前位置:   article > 正文

【Python】FastApi结合异步执行_fastapi 传递**kwargs

fastapi 传递**kwargs

一、需求说明

在使用fastApi框架的时候,往往程序会卡到uvicorn.run方法的执行步骤,从而其下面同步执行的动作不能被执行,此时需要使用异步思维进行其他动作的执行;

二、代码

Web.py

  1. from fastapi import FastAPI
  2. app = FastAPI()
  3. @app.get("/info")
  4. async def info():
  5. return {"key": "HelloWorld"}

WebMain.py

  1. import uvicorn
  2. from threading import Thread
  3. from time import sleep
  4. def my_async(f):
  5. def wrapper(*args, **kwargs):
  6. thr = Thread(target=f, args=args, kwargs=kwargs)
  7. thr.start()
  8. return wrapper
  9. @my_async
  10. def print_info():
  11. sleep(5)
  12. print("############test")
  13. if __name__ == '__main__':
  14. # 放在uvicorn.run前面,不然走不到此方法;
  15. print_info()
  16. uvicorn.run(app='Web:app', host='127.0.0.1', port=8000, reload=True, debug=True)
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/盐析白兔/article/detail/128401
推荐阅读
相关标签
  

闽ICP备14008679号