当前位置:首页 >> 脚本专栏

pycharm解决关闭flask后依旧可以访问服务的问题

这种问题一般是退出flask服务时选择了disconected而不是选择terminate,dicconected是一种伪断开,只是在pycharm这里中止了,但是python解释器依旧在运行这个服务。

pycharm解决关闭flask后依旧可以访问服务的问题

默认选项是ask,但是一般情景下,我们退出的话应该是关闭程序,而不是缩小化到托盘,所以更改上图的默认设置为退出该进程。

如果已经手贱点了disconnect,那么一种好方法是直接在任务管理器结束python解释器。

但是实际情况下我们还是只关闭运行flask的python解释器就行了

利用cmd关闭监听这个解释器就行

netstat -ano | findstr 5000

一般flask启动时监听的是5000端口,如果修改的话更改后面的端口号

pycharm解决关闭flask后依旧可以访问服务的问题

找到该进程的PID 这里是13384,然后利用下面命令把它结束掉。

taskkill /pid XXXXX /f

补充知识:Flask使用pycharm未关闭导致僵尸进程

我的僵尸进程产生

在使用pycharm编译程序的时候由于异常退出程序,导致子进程退出,父进程未结束,形成僵尸进程。

pycharm解决关闭flask后依旧可以访问服务的问题

僵尸进程

一个进程使用fork创建子进程,如果子进程退出,而父进程并没有调用wait或waitpid获取子进程的状态信息,那么子进程的进程描述符仍然保存在系统中。这种进程称之为僵死进程。

造成的后果

直接导致的结果就是,在未启动Flask服务器的情况下,访问127.0.0.1:5000,依旧能返回页面,但是pycharm后台无法获取返回状态(即网址以及200/301/404/500)

pycharm解决关闭flask后依旧可以访问服务的问题

解决办法

杀掉进程,重新启动程序

以上这篇pycharm解决关闭flask后依旧可以访问服务的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。