pycharm解決關閉flask后依舊可以訪問服務的問題
這種問題一般是退出flask服務時選擇了disconected而不是選擇terminate,dicconected是一種偽斷開,只是在pycharm這里中止了,但是python解釋器依舊在運行這個服務。
默認選項是ask,但是一般情景下,我們退出的話應該是關閉程序,而不是縮小化到托盤,所以更改上圖的默認設置為退出該進程。
如果已經點了disconnect,那么一種好方法是直接在任務管理器結束python解釋器。
但是實際情況下我們還是只關閉運行flask的python解釋器就行了
利用cmd關閉監(jiān)聽這個解釋器就行
netstat -ano | findstr 5000
一般flask啟動時監(jiān)聽的是5000端口,如果修改的話更改后面的端口號
找到該進程的PID 這里是13384,然后利用下面命令把它結束掉。
taskkill /pid XXXXX /f
補充知識:Flask使用pycharm未關閉導致僵尸進程
我的僵尸進程產生
在使用pycharm編譯程序的時候由于異常退出程序,導致子進程退出,父進程未結束,形成僵尸進程。
僵尸進程
一個進程使用fork創(chuàng)建子進程,如果子進程退出,而父進程并沒有調用wait或waitpid獲取子進程的狀態(tài)信息,那么子進程的進程描述符仍然保存在系統(tǒng)中。這種進程稱之為僵死進程。
造成的后果
直接導致的結果就是,在未啟動Flask服務器的情況下,訪問127.0.0.1:5000,依舊能返回頁面,但是pycharm后臺無法獲取返回狀態(tài)(即網址以及200/301/404/500)
解決辦法
殺掉進程,重新啟動程序
以上這篇pycharm解決關閉flask后依舊可以訪問服務的問題就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。