socket关闭后无法绑定端口的问题
来源:互联网 发布:ug软件是什么软件 编辑:程序博客网 时间:2024/05/29 17:33
之前有所耳闻,没有去注意,直到被问到这个问题.
如果一个socket绑定了某个端口,该socket正常关闭或程序退出后,在一段时间内该端口依然保持被绑定的状态,其他程序(或者重新启动的原程序)无法绑定该端口。可以在获得socket描述符之后通过调用setsockopt语句避免该问题:
int sockfd;
int opt = 1;
int len = sizeof(opt);
sockfd = socket(AF_INET, SOCK_STREAM, 0);
setsockopt(sockfd, SOL_SOCKET, SO_REUSEADDR, &opt, &len);
在使用TCP连接方式的时候,当一个绑定到指定端口的描述符主动断开时,在这个端口上的连接将进入TIME_WAIT状态,并且会等待2*MSL时间才释放。MSL是max segment lifetime,一般是30秒或两分钟.
0 0
- socket关闭后无法绑定端口的问题
- socket端口无法绑定的10048错误
- Socket关闭后端口仍然占用导致无法建立新的连接
- Socket无法绑定端口,端口被占用
- centos服务器关闭iptables防火墙后仍然无法通过公网ip访问http端口的问题
- fastcgi 绑定的程序用unix domain socket后无法写文件的问题
- idhttpserver关闭后重起报端口已被绑定问题的解决办法
- SOCKET accept后端口与listen绑定端口相关备注
- Eclipse强制关闭后,8080端口占用的问题
- socket关闭后再new,再connect失败的问题
- axTocControl 添加两个splitContainer后无法绑定的问题
- 解决虚拟键盘关闭后无法退出程序的问题
- extjs tree节点展开后无法关闭的问题
- 解决Socket端口关闭后监听方法出错
- Socket绑定网络端口
- UDP的socket绑定到IP地址后无法接受广播数据
- UDP的socket绑定到IP地址后无法接受广播数据
- 绑定服务遇到的问题,绑定后无法调用其中的数据和函数
- 使用DMV和DMF分析数据库性能
- JSON的应用与解析
- jquery操作iframe(齐全版,经IE6&IE6+、firefox、chrome测试通过)
- mysql5.6.16绿色版配置、运行
- thrift python安装
- socket关闭后无法绑定端口的问题
- 五十七 小知识
- Longest Consecutive Sequence
- linux 下获取所有网卡mac,name
- xPath语法
- HYSBZ 1269 文本编辑器editor(Splay)
- hdu1134 Game of Connections(Catalan数, 顺便附上大数类模板)
- Confluence 页面索引(Page Index)宏
- Cannot insert explicit value for identity column in table 'TableNa' when IDENTITY_INSERT is set to O