社区
通信技术
帖子详情
shutdown之后,会造成缓冲区中数据的丢失吗
hu_jiajun1979
2010-11-24 10:31:39
close之前,有必要执行shutdown吗。
我个人认为,shutdown只会保证发送缓冲区的数据不被丢失,接收缓冲区的数据会被抹掉。
因此,即使close之前执行shutdown,也不能保证数据的完整性。
...全文
210
2
打赏
收藏
shutdown之后,会造成缓冲区中数据的丢失吗
close之前,有必要执行shutdown吗。 我个人认为,shutdown只会保证发送缓冲区的数据不被丢失,接收缓冲区的数据会被抹掉。 因此,即使close之前执行shutdown,也不能保证数据的完整性。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
hu_jiajun1979
2010-11-26
打赏
举报
回复
确信了,肯定会丢失
yanghehong
2010-11-24
打赏
举报
回复
貌似shutdown 可以指定是要停止接收,还是停止发送。
shutdown之后要继续接收剩余数据,才不会丢失。
【网络】close与
shutdown
本文详细介绍了TCP连接关闭时,close()与
shutdown
()函数的区别和用法。close()
会
立即断开连接并
丢失
输出
缓冲区
的
数据
,而
shutdown
()允许选择性关闭读写通道,并确保
数据
传输完成。通过示例代码展示了如何优雅地关闭TCP连接,以及在多进程共享套接字时需要注意的问题。同时,文章提供了如何在实际应用
中
选择合适的方法来关闭连接的指导。
优雅地断开TCP连接
博客介绍了网络编程
中
close()/closesocket() 和
shutdown
() 函数断开连接的区别。close()/closesocket()
会
完全断开连接,关闭套接字并可能
丢失
输出
缓冲区
数据
;而
shutdown
() 可只断开一条
数据
传输通道,关闭连接但套接字仍存在,
会
等
缓冲区
数据
传完再发 FIN 包。
第十八篇:批量处理情况下的回射客户端
本文探讨了在网络编程批量处理场景下客户端遇到的
数据
丢失
与IO异常问题,并提出改进措施,包括使用
shutdown
函数来避免
数据
丢失
,以及改变
缓冲区
处理方式以解决IO异常。
C#
中
Socket 进行
数据
接收的一点心得
本文探讨了在TCP/IP编程
中
使用Socket进行异步
数据
接收的问题,特别是如何处理不同长度的
数据
包,避免因
缓冲区
大小限制导致的
数据
丢失
或阻塞。文章还讨论了如何正确使用Socket的
Shutdown
和Close方法。
通信技术
4,395
社区成员
28,907
社区内容
发帖
与我相关
我的任务
通信技术
通信技术相关讨论
复制链接
扫一扫
分享
社区描述
通信技术相关讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章