检查 P2P UDP C# 中的断开连接



我正在制作一个应用程序,其中三个用户进入一个会话并相互发送UDP数据(点对点(。如何检测其中一个用户是否已与会话断开连接?

由于 UDP 不是基于连接的,因此判断用户是否已断开连接的唯一方法是检查您是否不再收到来自他们的响应或消息。

一种策略是让用户定期发送"检测信号"消息,并跟踪用户是否连续错过了最后 X 个检测信号,此时假设他们已断开连接。这些消息不需要包含任何信息,只需接收它们才是重要的。

您还应该让用户在断开连接时发送"断开连接消息",但不要仅仅依赖此消息,因为用户可能会崩溃或消息可能会丢失并且永远不会收到。

最新更新