加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

linux – 在C中关闭侦听TCP套接字

发布时间:2020-12-14 01:13:46 所属栏目:Linux 来源:网络整理
导读:假设您有一个侦听TCP端口的套接字,并且某些客户端已连接.当在C中发出sock_close(fd)并尝试在同一端口再次绑定时,绑定失败.在“netstat -plutnoa”上可以看到一些TIME_WAIT状态,例如: tcp 0 0 127.0.0.1:4567 127.0.0.1:32977 TIME_WAIT - timewait (17.12/0
假设您有一个侦听TCP端口的套接字,并且某些客户端已连接.当在C中发出sock_close(fd)并尝试在同一端口再次绑定时,绑定失败.在“netstat -plutnoa”上可以看到一些TIME_WAIT状态,例如:

tcp        0      0 127.0.0.1:4567          127.0.0.1:32977         TIME_WAIT   -                timewait (17.12/0/0)

那么如何才能正确断开服务器套接字并立即在同一端口重新连接?

解决方法

您想在套接字上使用SO_REUSEADDR选项.相关联机帮助页是 socket(7).这是其使用的 example. This question解释了会发生什么.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读