socket error address already in use 的解决办法
来源:互联网 发布:ipad 壳淘宝店铺 编辑:程序博客网 时间:2024/05/16 08:38
在写一个TCP通信服务端时出现了一个问题:当我用 Ctrl + C 结束服务端后再重新启动,提示错误:socket error:address already in use。非常奇怪,我怀疑是由于没有 close socket 引起,所以选择捕获 SIGINT 信号并处理之,发现仍然不行。真是莫名其妙。然后看到网上提到的:linux套接字编程中的5个隐患
地址使用错误(EADDRINUSE)
您可以使用 bind API 函数来绑定一个地址(一个接口和一个端口)到一个套接字端点。可以在服务器设置中使用这个函数,以便限制可能有连接到来的接口。也可以在客户端设置中使用这个函数,以便限制应当供出去的连接所使用的接口。bind 最常见的用法是关联端口号和服务器,并使用通配符地址(INADDR_ANY),它允许任何接口为到来的连接所使用。
bind 普遍遭遇的问题是试图绑定一个已经在使用的端口。该陷阱是也许没有活动的套接字存在,但仍然禁止绑定端口(bind 返回 EADDRINUSE),它由 TCP 套接字状态TIME_WAIT 引起。该状态在套接字关闭后约保留 2 到 4 分钟。在 TIME_WAIT 状态退出之后,套接字被删除,该地址才能被重新绑定而不出问题。等待 TIME_WAIT 结束可能是令人恼火的一件事,特别是如果您正在开发一个套接字服务器,就需要停止服务器来做一些改动,然后重启。幸运的是,有方法可以避开 TIME_WAIT状态。可以给套接字应用 SO_REUSEADDR 套接字选项,以便端口可以马上重用。
阅读全文
0 0
- socket error address already in use 的解决办法
- “Bind error:Address already in use” 错误的解决办法
- 解决socket.error: [Errno 98] Address already in use问题
- 解决socket.error: [Errno 98] Address already in use问题
- socket.error: [Errno 48] Address already in use
- Python socket.error: [Errno 98] Address already in use
- socket.error: [Errno 98] Address already in use
- linux socket通信bind error:Address already in use
- python socket.error: [Errno 48] Address already in use
- 解决socket.error: [Errno 98] Address already in use问题
- python socket.error: [Errno 48] Address already in use
- socket.error: [Errno 98] Address already in use解决方案
- socket编程注意的地方---bind socket error: Address already in use
- Linux下Socket编程的端口问题( Bind error: Address already in use )
- Linux下Socket编程的端口问题( Bind error: Address already in use )
- Linux下Socket编程的端口问题( Bind error: Address already in use )
- Linux下Socket编程的端口问题( Bind error: Address already in use )
- Linux下Socket编程的端口问题( Bind error: Address already in use )
- Handler内存泄漏分析及解决
- php表单以及用户输入
- 关于大小端的简单介绍以及使用C写一个函数判断当前系统是大端存储还是小端存储
- Java NIO系列教程(10):Java NIO DatagramChannel
- 使用HTML5的Canvas标签实现绘图板内拖拽元素
- socket error address already in use 的解决办法
- HDU 1003(动态规划-最大连续区间和)
- 反射_Constructor
- str和repr的区别
- 工作流后加签实现
- 交叉验证(Cross validation)
- 文章标题
- 老何CAD工具箱 v1.2免费版下载
- 维护区间gcd(线段树 || ST表+二分)