请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

关于flask的多线程

你好老师, 我想确认一下,flask核心对象是全局单例的,这个核心对象是在主线程中被创建,其他线程想要使用需要从在主线程获取。而当flask开启多线程模式,同时多个请求进来就会有多个线程被创建来处理,每个线程都有自己request对象。在每个线程中,request对象会被request_context对象包裹并推入request_ctx_stack中,推入之前系统会自动检app_ctx_stack中是否有app_context对象,如果没有会自动创建并推入。所以在由并发请求触发的多线程中是不会出现在本节课遇见的找不到current_app的问题的对吧?

正在回答

插入代码

2回答

不会出现找不到current_app,你是什么情况下出现的?

0 回复 有任何疑惑可以回复我~
  • 提问者 weixin_慕慕8136048 #1
    我的意思是手动在程序中启动一个线程,是没法拿到核心对象的,除非从主线程传入,并手动推入local_stack,这样current_app才能用。但是如果是并发请求中,系统自动生成的子线程的current_app是系统已经生成好了。这样理解对吗
    回复 有任何疑惑可以回复我~ 2020-11-16 03:34:57
  • 7七月 回复 提问者 weixin_慕慕8136048 #2
    是的。
    回复 有任何疑惑可以回复我~ 2020-11-17 09:47:43
  • 提问者 weixin_慕慕8136048 #3
    非常感谢!
    回复 有任何疑惑可以回复我~ 2020-11-18 01:09:20
路漫漫我不畏 2021-04-07 11:27:13

感谢。

0 回复 有任何疑惑可以回复我~
问题已解决,确定采纳
还有疑问,暂不采纳
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号