作者mycallmax (阿冠)
看板b95902HW
标题[分享] Bind: Address Already in Use
时间Wed Apr 22 20:41:14 2009
写计网作业的时候
在刚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)
1F:推 goingon:认真推! 04/22 20:52
2F:推 locationc:.....也太认真了吧 04/22 23:12
3F:推 kuokuo321:推~~~以前遇到bind超困扰的! 04/22 23:27
4F:推 edwardhw:推一个 04/23 00:37
5F:→ robertshih:耶 04/28 14:54