1. 程式人生 > >Python3 Address already in use 解決方法

Python3 Address already in use 解決方法

1、檢視使用埠號netstat -ntlp

2、根據埠號找到pid

3、殺死程式 kill -9 pid

4、重新啟動程式

簡單粗暴

我使用python3時編寫Socket,linux系統下使用ctrl+z結束程式後,重啟程式繼續報錯,Address already in use ;

查資料說在bind之前加上  self.serversocket.setsockopt(SOL_SOCKET, SO_REUSEADDR, 1) 這句話但是還是會報錯。

查資料找到  ctrl+z和ctrl+c命令  同樣是中斷命令但是不一樣

ctrl+z是掛起任務,任務不終止,

ctrl+c是強制中斷程式的執行。

使用者可以使用fg/bg操作繼續前臺或後臺的任務
fg命令重新啟動前臺被中斷的任務

bg命令把被中斷的任務放在後臺執行.

例如:當你vi一個檔案是,如果需要用shell執行別的操作,但是你又不打算關閉vi,因為你得存檔推出,你可以簡單的按下Ctrl+z,shell會將vi程序掛起~,當你結束了那個shell操作之後,你可以用fg命令繼續vi你的檔案。

問題:

我使用ctrl+c不管用沒有終止任務,經過具體檢查是因為 linux命令跟我使用快捷鍵衝突

所以。。。。。。

解決:

bind前新增self.serversocket.setsockopt(SOL_SOCKET, SO_REUSEADDR, 1)

終止任務時要完全的終止才可以,使用ctrl+c