Linux下Socket编程:bind().Address already in use的解决方法
当客户端保持着与服务器端的连接,这时服务器端断开,再开启服务器时会出现: Address already in use,可以用netstat -anp | more 可以看到客户端还保持着与服务器的连接(还在使用服务器bind的端口)。这是由于client没有执行close,连接还会等待client的FIN包一段时间。解决方法是使用setsockopt,使得socket可以被重用,是最常用的服务器编程要点。具体的做法为是,在socket调用和bind调用之间加上一段对socket的设置:
int opt = 1;setsockopt(socket_fd,SOL_SOCKET,SO_REUSEADDR,&opt,sizeof(opt));
Linux下Socket编程:bind().Address already in use的解决方法相关推荐
- Linux下Socket编程
Linux下Socket编程 网络的Socket数据传输是一种特殊的I/O,Socket也是一种文件描述符.Socket也具有一个类似于打开文件的函数调用Socket(),该函数返回一个整型的S ...
- 一文了解linux下socket编程
一文了解linux下socket编程 文章目录 一文了解linux下socket编程 1 网络编程的相关简述 1.1 引言 1.2 Tcp和Udp简介 1.3 TCP三次握手和四次挥手 1.4 网络编 ...
- LINUX下Socket编程 函数格式详解
你需要了解的一些系统调用: socket() bind() connect() listen() accept() send() recv() sendto() recvfrom() close() ...
- linux下socket编程读写函数
linux下socket编程,实现服务器与客户端的通信之后,在同一个虚拟机上,打开两个shell,一个运行服务器程序,一个运行客户端程序,课相互发送数据. 如果使用的是recv接收函数,当关闭客户端或 ...
- Linux下MySql出现#1036 – Table ‘ ‘ is read only 错误解决方法
Linux下MySql出现#1036 – Table ' ' is read only 错误解决方法 参考文章: (1)Linux下MySql出现#1036 – Table ' ' is read o ...
- linux下java.lang.NoClassDefFoundError: org/bouncycastle/jce/provider/BouncyCastleProvider解决方法
linux下java.lang.NoClassDefFoundError: org/bouncycastle/jce/provider/BouncyCastleProvider解决方法 参考文章: ( ...
- [zz]Linux 下 socket 编程示例
本示例为 Client/Server 结构,通过代码演示 Client 如何建立连接,并向远程端发送数据:Server 端如何侦听系统连接请求,接收请求并建立连接,进而获取客户端发来的数据.代码虽短, ...
- linux下socket编程中setsockopt的作用
如题所示,在linux进行socket编程的时候,一般而言,socket,bind,listen三步曲之后,就开始接收客户端请求,然后实现收发数据. 如下所示的代码,是没有setsockopt的情况: ...
- C++服务器(一):了解Linux下socket编程
最近想要用C++写个socket的服务器,用于日常的项目开发. 不过,我是新手,那就慢慢地学习一下吧. 首先,先写一段程序,用起来先. 感谢博文: Linux下 C++调用C 实现socket网络通讯 ...
最新文章
- [敏捷开发实践](2) 用于开发和维持复杂产品的敏捷开发框架Scrum
- 整理了一下Asp.net源码常见问题(完善中...),欢迎大家补充修正(最后更新于06-01)!...
- JDK10 EA版特性速览
- Linux驱动之LCD驱动编写
- 何恺明团队最新力作SimSiam:消除表征学习“崩溃解”,探寻对比表达学习成功之根源...
- 【前端词典】和媳妇讲代理后的意外收获
- TImm 笔记: 训练模型
- [scala-spark]8. RDD的实现和编程接口
- MFC模块的动态链接库DLL以及静态链接库LIB编译后的调用
- 雷辉:让视频会议conferencing like TV
- html php获取post数据格式,html - php文件无法得到POST过来的数据
- MySQL的存储过程和函数简单写法
- laydate根据开始时间或者结束时间限制范围
- java中文文档官方下载
- 首届 “女生科技体验节” 大爆料!
- GEE学习总结(3)——矢量面外接矩形和外包络面绘制与矢量数据导出
- 2020全国地图矢量数据gis地图数据(下载获取支持)
- 杭州电子科技大学java刷题_杭州电子科技大学的OJ
- 多张图片合成一张图片
- python爬虫网页崩溃怎么处理_《Python网络爬虫》1.2 爬取网页的异常处理