python - 如何让 Intellij-idea 正确关闭 Flask 开发服务器?

标签 python macos intellij-idea flask pycharm

我使用 IDEA 10.5 进行 Flask 实验。 Flask 有嵌入式测试服务器(就像 Django 一样)

当我启动我的测试类时,开发服务器也在端口 5000 上启动。一切都很好。 * 在 http://127.0.0.1:5000/ 上运行

当我点击“停止进程”按钮(红色方 block )时,我收到消息说进程已完成: 进程已完成,退出代码为 143

但是服务器仍然存在(响应请求)并且我可以看到我仍然有一个 python 进程在运行。

显然这会阻止我立即重新启动测试,我必须先终止服务器进程。

你如何设法让你的程序和服务器同时结束?

最佳答案

我想发生的事情是你启动了你的 flask 应用程序,然后将开发服务器作为一个新进程进行 fork 。如果您停止该应用, fork 进程仍在运行。

这看起来像是一个问题,无法通过您的 IDE 轻松解决。在再次启动应用程序之前,您可以在主程序中添加一些内容以终止已经运行的服务器进程,但这看起来很难看。

但是你为什么不直接使用 app.run(debug=True) 启动你的应用 as described in flask doc ?每次您更改应用程序时,服务器都会自动重新加载,因此您无需手动停止和重新启动它。

编辑: 我突然想到了一些古怪的事情:如果您只需要一种从 IDE 中杀死服务器的舒适方法,您所要做的就是在重新加载程序监视的其中一个地方引入语法错误,保存文件和服务器会窒息而死:)

关于python - 如何让 Intellij-idea 正确关闭 Flask 开发服务器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6565871/

相关文章:

cocoa - Mac OS X Interface Builder 的调试工具/方法 (3.2.3)

intellij-idea - 您可以在每个项目的基础上更改 IntelliJ 颜色吗?

Python3编码问题

python - C/Python 中的国际数据加密算法(IDEA)

macos - 更改高亮显示的NSButton背景颜色

linux - 安排 cron 作业以打开终端并按顺序运行命令

python - 获取行中每个值的最常见值 - pandas df

python - Windows 机器上的 Django TemplateDoesNotExist 错误

java - Intellij无法识别java 8 maven项目自动模块名称

macos - 无法执行没有JRE捆绑的JavaFX应用程序