社区
通信技术
帖子详情
如何正确释放socket通信绑定的地址?
crystalfish
2003-10-16 03:09:08
我用socket进行通信,在服务器端用"ctrl+c"结束程序,或是程序自动运行到close(s)时,结束程序,但是这时当我重新运行程序时,会出现刚才使用的端口还在使用,过一段时间后,再运行就没有问题了,请问怎样才能在程序结束时,立即释放
绑定的地址?
...全文
101
2
打赏
收藏
如何正确释放socket通信绑定的地址?
我用socket进行通信,在服务器端用"ctrl+c"结束程序,或是程序自动运行到close(s)时,结束程序,但是这时当我重新运行程序时,会出现刚才使用的端口还在使用,过一段时间后,再运行就没有问题了,请问怎样才能在程序结束时,立即释放 绑定的地址?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
deva
2003-10-17
打赏
举报
回复
还要补充一点就是close()只是把套接字描述符指向的套接字结构的引用计数减1
当引用计数为0时,系统将关闭套接字,与shutdown()有区别.close()与
shutdown(sockfd,SHUT_WR)相同,只是关闭写数据,而对方仍能向我方发数据!!
deva
2003-10-17
打赏
举报
回复
tcp的联接结束之后有2MSL的等待时间,在此期间是不能重用的,是为了忽略迟到的数据包
应该不 好立即释放吧!!!
udp不知是什么样?
C++
socket
通信
详解
Socket
是什么
Socket
是应用层与TCP/IP协议族
通信
的中间软件抽象层,它是一组接口。在设计模式中,
Socket
其实就是一个门面模式,它把复杂的TCP/IP协议族隐藏在
Socket
接口后面,对用户来说,一组简单的接口就是全部,让
Socket
去组织数据,以符合指定的协议。 原作者将
socket
通信
类比为打电话这一生活场景。这里我把TCP服务器比作政府某一服务部门能,TCP客户端比作企业中某一部门电话,描述这一过程,恰好就像是
socket
通信
,服务部门提供服务,企业部门申请服务。 要实现
通信
,首先政府
Socket
通信
Socket
通信
通信
过程 服务端先初始化
Socket
,然后与端口进行
绑定
(bind),对端口进行监听(listen),调用accept阻塞,等待客户端连接。在这时如果有客户端初始化一个
Socket
,然后连接服务器(connect),如果连接成功,这时客户端与服务端的连接就建立了。客户端发送数据请求,服务器端接收请求并处理请求,然后把回应数据发送给客户端,客户端读取数据,最后关闭连接,一次交互结束。 服务端 创建套接字
绑定
套接字到一个IP
地址
和端口上 将套接字设置为监听模式等待连接请求 请求到来后,接受
[底层原理]
Socket
究竟是什么? 为啥网络离不开
Socket
?
一说到网络,大家必然会想到 TCP、UDP、Http、三握四挥等,但是一说
Socket
,大家可能会有点模糊了,只知道网络中会用到,但是
Socket
究竟是什么? 套接字又是啥?为啥网络离不开
Socket
?
Socket
其实就是套接字,大部分人对于
Socket
的理解就是它可以实现一个简单的网络
通信
,但是它「具体解决了哪些问题?有什么实际的作用?为什么会有一个
Socket
出现?」
Socket
其实是在「应用层与传输层之间的一个产物」,它把传输层的很多复杂操作封装成一些简单的接口,来让应用层调用以
java
socket
通信
安全_Java
Socket
通信
介绍及可能遇到的问题解决
前言本文主要给大家介绍了关于Java中
Socket
通信
的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。Java中基于TCP协议实现网络
通信
的两个类:客户端的
Socket
和服务器端的Server
Socket
。
Socket
通信
模型如图所示:不管
Socket
通信
的功能有多复杂,任何
socket
通信
过程的基本结构都是一样的。其基本步骤为:①分别在客户端和服务器端创建
Socket
...
C++实现简单
Socket
通信
参考学习:C++:实现
socket
通信
(TCP/IP)实例 1. 一对一 server.cpp // server.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。 /* 服务端:建立
socket
,申明自身port和IP,并
绑定
到
socket
,使用listen监听, 然后不断用accept查看是否有连接。如果有,捕获
socket
,并通过recv获取消息内容,
通信
完成后调用close
Socket
关闭accept捕获到的
socket
。如果不需要等待任何客户端连接, 直接用closeSo
通信技术
4,356
社区成员
28,926
社区内容
发帖
与我相关
我的任务
通信技术
通信技术相关讨论
复制链接
扫一扫
分享
社区描述
通信技术相关讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章