Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/unix/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python flask服务器启动时间过长_Python_Python 3.x_Flask_Webpage - Fatal编程技术网

Python flask服务器启动时间过长

Python flask服务器启动时间过长,python,python-3.x,flask,webpage,Python,Python 3.x,Flask,Webpage,我有一个奇怪的问题,当我在PyCharm中或通过控制台(python script.py)运行下面的代码时,flask服务器需要很长时间才能启动,这意味着当试图访问它时,它会在好几分钟内显示不出任何内容 import threading from flask import render_template, request, logging, Flask, redirect def setupFlask(): appn = Flask(__name__) log = loggin

我有一个奇怪的问题,当我在PyCharm中或通过控制台(python script.py)运行下面的代码时,flask服务器需要很长时间才能启动,这意味着当试图访问它时,它会在好几分钟内显示不出任何内容

import threading
from flask import render_template, request, logging, Flask, redirect

def setupFlask():
    appn = Flask(__name__)
    log = logging.getLogger('werkzeug')
    log.setLevel(logging.ERROR)


    @appn.route('/')
    def page():
        return render_template('index.html')


    @appn.route('/submit', methods=['POST'])
    def submit():
        token = request.form['ID']
        ID = token
        return redirect('/')

    appn.run()
a = threading.Thread(target=setupFlask)
a.daemon = True
a.start()
while True:
    pass
奇怪的是,当我在PyCharm调试器中运行上面相同的代码时,flask服务器启动大约需要5秒,比在控制台中运行的几分钟要快得多。我希望在正常运行脚本时有这样的速度,但由于在调试器中修复自身的问题而找不到解决方案! 这个代码片段是一个更大的应用程序的一部分,但是我已经对它进行了调整,使其能够独立运行,并且出现了相同的问题。 我不是在虚拟电视里跑步。 谢谢你的帮助


编辑:index.html文档非常基本,只包含一些脚本和元素,因此我看不到它需要很长时间才能加载。

问题在于您的
Flask
安装,但还有另一个问题。您不应该等待线程执行
while
循环。更好的方法是创建线程,如下所示:

a = threading.Thread(target=setupFlask)
a.daemon = True
a.start()
a.join()

这很奇怪。它应该总是像5s。你是怎么操作控制台的?@Frynio确实。。。我在线程中运行上述函数,并在控制台中执行普通的“pythonscript.py”。在PyCharm中运行时,也会发生相同的长启动时间。我会稍微修改一下这个问题,让它更有意义。你使用virtualenv吗?顺便说一句,你的进口很奇怪。我会一直
从flask导入flask
,您的代码f.e不适用于meIs您的代码样本完整的脚本还是被编辑下来了?您正在daemonic线程中运行Flask应用程序,这表明在主线程中会发生更多的情况,否则进程将在
a.start()
@Frynio之后退出。我将尝试重新安装python,并尝试以老式方式修复模块,因为您没有遇到相同的行为!