1. 程式人生 > >socket.error: [Errno 10048]及檢視pid程序號和埠號

socket.error: [Errno 10048]及檢視pid程序號和埠號

最近用python編寫一個socket程式設計,執行時有時會出現錯誤:
socket.error: [Errno 10048] 通常每個套接字地址(協議/網路地址/埠)只允許使用一次

經過搜尋發現這個提示是在埠衝突的時候出現,可能的原因是在伺服器程式中建立一個Socket開啟一個埠後,在程式結束的時候沒有關閉這個Socket,因此下次啟動程式就會出現這個錯誤提示,解決方法:

1、在伺服器程式結束的時候要關閉Socket

2、或者更換埠號

3、重啟機器

Win7系統快速檢視埠號和pid程序號:
1.按下Win+R鍵,輸入CMD,開啟命令列。

2.在CMD視窗中輸入netstat -aon|findstr

表示要檢視的埠號。
以netstat -aon|findstr 80為例:
3.從下圖可以看出有程式在佔用了80埠,最右側是佔有這個程式的程序ID:2996;
這裡寫圖片描述
4.知道了程序ID,我們只需要查出2996是哪個程式就可以了;繼續輸入以下命令:tasklist|findstr “2996”,2996就是之前的程序ID。
這裡寫圖片描述
關閉對應的程序

    taskkill /F /IM httpd.exe  

檢視埠狀態

netstat -aon