[分享] Bind: Address Already in Use
寫計網作業的時候
在剛Bind某一個Port之後不能馬上再Bind
Bind: Address Already in Use
要等系統把那個port真正close才行
這個其實是有辦法解決的
可以用setsockopt()這個函式來解決
用法如下
int opt=1;
listenfd=socket(AF_INET, SOCK_STREAM, 0);
setsockopt(listenfd,SOL_SOCKET,SO_REUSEADDR,&opt,sizeof(opt));
多了setsockopt把該socket設定成可以reuse同一個port即可
但這個方法好像有個潛在的問題
不過還是可以用
詳細可以參考下面文章
http://tinyurl.com/c89vep
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.245.9
※ 編輯: mycallmax 來自: 140.112.245.9 (04/22 20:42)
推
04/22 20:52, , 1F
04/22 20:52, 1F
推
04/22 23:12, , 2F
04/22 23:12, 2F
推
04/22 23:27, , 3F
04/22 23:27, 3F
推
04/23 00:37, , 4F
04/23 00:37, 4F
→
04/28 14:54, , 5F
04/28 14:54, 5F