社区
Linux/Unix社区
帖子详情
socket句柄不能及时释放的问题
think__
2004-02-03 10:28:25
unixware系统,通信服务程序,监听socket或连接socket,在程序关闭或异常退出后马上重启程序,socket创建不能成功,要等一定时间后重启程序,才能正常运行。
请求帮助
...全文
672
11
打赏
收藏
socket句柄不能及时释放的问题
unixware系统,通信服务程序,监听socket或连接socket,在程序关闭或异常退出后马上重启程序,socket创建不能成功,要等一定时间后重启程序,才能正常运行。 请求帮助
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
11 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
blh
2004-02-03
打赏
举报
回复
注册signal函数,接管SIGINT等信号,在信号处理函数中关闭套结字
sunriselx
2004-02-03
打赏
举报
回复
fierygnu(va_list)能不能说详细点,谢谢
chairou
2004-02-03
打赏
举报
回复
呵呵, fierygnu(va_list) 的方法就可以了,我以前不知道的
时候,还给BIND()自己写了一个bind()失败的话,sleep(5000)
再bind()一次,呵呵,好搞笑
xinyi
2004-02-03
打赏
举报
回复
處理異常退出信號,關了它
fierygnu
2004-02-03
打赏
举报
回复
进入了TIME_WAIT状态。用SO_REUSEADDR选项。
kaederukawacy
2004-02-03
打赏
举报
回复
正常退出是在C/S端都调用CLOSE 关闭 连接的SOCKET 就不会有这种情况
异常退出或者KILL掉后要等待 SOCKET 自己超时是没有办法的
rexp
2004-02-03
打赏
举报
回复
SO_REUSEADDR
选项有关
fierygnu
2004-02-03
打赏
举报
回复
to 楼主:
man setsockopt
fierygnu
2004-02-03
打赏
举报
回复
这个与异常退出没有关系。TCP协议规定有TIME_WAIT状态,这样可以避免网络里延时发送来的包引起错误。
yuanlei1978113
2004-02-03
打赏
举报
回复
在程序关闭或异常退出后你要做收尾工作,
1.shutdown()
2.close()
3.sock = 0;
这样就没有问题了(异常推出要捕捉系统信号)
Algopro
2004-02-03
打赏
举报
回复
int optval = 1;
setsockopt(sd, SOL_SOCKET, SO_REUSEADDR, &optval, sizeof(optval));
Linux C++程序解决文件
句柄
(包括
socket
句柄
等)耗尽
问题
最近在线上发现一个
问题
,程序在服务器上跑了3周后,会出现新日志文件创建不出来的
问题
,另外,该程序需要使用curl访问后端的HTTP服务调用总是失败。日志文件创建不出来由于不是关键业务,一开始没有做太多关注。但是访问后端HTTP服务失败的
问题
却是很要命。监控报警一响,我们首先尝试解决
问题
,就重启了所有程序,
问题
解决。之后,就立马排查这个
问题
发生的原因。 在没有重启程序前,首先怀疑的自然是后端HTT
线程与
socket
句柄
上午听同事讨论关于线程退出的时候是否需要关闭
socket
句柄
的
问题
,之前都是在讨论进程退出时,进程会
释放
所占有的所有资源,当然也包括
socket
句柄
资源,关于这点相信大部分人也相当的清楚。 关于线程退出时,
socket
句柄
是否也会自动的关闭,我个人认为线程不会自动关闭
socket
句柄
在线程退出时,因为线程是公用进程的资源,进程会自动
释放
资源很显然线程就不太可能
释放
资源。为此我个人做了一个简单的测试: #include #include #include void *threadfunc(v
SOCKET
句柄
泄露带来的内存灾难
前些时候游戏莫名其妙出现大量内存泄露,我感到很诧异,当然一般情况下游戏的内存管理是极其严苛的,出现如此大量的内存泄露到底是怎么回事?
句柄
滥用导致的内存泄露会多夸张呢,尤其
SOCKET
,在某些客户端系统下,短短5个小时可以吃掉5GB以上内存,有甚者达到6GB,并且进程内存查看非常完好,并无激增,那内存去哪了?看看我们的排错过程。1。...
Socket
句柄
数量与 Windows 系统限制
问题
深度解析
摘要:本文深入解析了Windows系统中
Socket
句柄
的数量限制
问题
。
Socket
句柄
作为网络通信的核心标识,在Windows中受到系统级、进程级等多层限制,包括全局端口范围、内存限制等。文章详细介绍了查看和调整这些限制的方法,并提供了错误诊断工具和优化策略,如调整动态端口范围、修改注册表项、采用IOCP模型等,帮助开发者应对高并发场景下的
Socket
句柄
限制挑战。
【分享】文件
句柄
数递增
问题
排查--引申出
SOCKET
泄露
最近在linux上开发的
Linux/Unix社区
23,223
社区成员
74,536
社区内容
发帖
与我相关
我的任务
Linux/Unix社区
Linux/Unix社区 应用程序开发区
复制链接
扫一扫
分享
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章