pycharm解决关闭flask后依旧可以访问服务的问题
这种问题一般是退出flask服务时选择了disconected而不是选择terminate,dicconected是一种伪断开,只是在pycharm这里中止了,但是python解释器依旧在运行这个服务。
默认选项是ask,但是一般情景下,我们退出的话应该是关闭程序,而不是缩小化到托盘,所以更改上图的默认设置为退出该进程。
如果已经手贱点了disconnect,那么一种好方法是直接在任务管理器结束python解释器。
但是实际情况下我们还是只关闭运行flask的python解释器就行了
利用cmd关闭监听这个解释器就行
netstat -ano | findstr 5000
一般flask启动时监听的是5000端口,如果修改的话更改后面的端口号
找到该进程的PID 这里是13384,然后利用下面命令把它结束掉。
taskkill /pid XXXXX /f
补充知识:Flask使用pycharm未关闭导致僵尸进程
我的僵尸进程产生
在使用pycharm编译程序的时候由于异常退出程序,导致子进程退出,父进程未结束,形成僵尸进程。
僵尸进程
一个进程使用fork创建子进程,如果子进程退出,而父进程并没有调用wait或waitpid获取子进程的状态信息,那么子进程的进程描述符仍然保存在系统中。这种进程称之为僵死进程。
造成的后果
直接导致的结果就是,在未启动Flask服务器的情况下,访问127.0.0.1:5000,依旧能返回页面,但是pycharm后台无法获取返回状态(即网址以及200/301/404/500)
解决办法
杀掉进程,重新启动程序