如何解释Socket中的保活机制和踢出用户机制?

王思明 王思明 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区


1.首先TCP是长连接,连接后正常情况下是不会无故断开的,但是由于路由,以及防火墙等原因的存在,会踢出长时间没有数据交换的连接,所以要有一个保活机制,发送心跳包

或者设置

e.AcceptSocket.IOControl(IOControlCode.KeepAliveValues, _keepAliveOptions, null);

2.

a.在连接没有关闭的情况下客户端异常退出,服务端还要维持这样一个连接就比较浪费,所以要踢出;

b.踢出几分钟内没有交互的连接


问题:如何去理解这两种关系??
...全文

相关推荐

评论 8
收藏 已收藏
分享
返回顶部
王思明
C# 111,128 成员 642,536 内容