gpt4 book ai didi

c# - 如何在 2500 多个套接字上实现 TCP/IP 心跳?

转载 作者:太空狗 更新时间:2023-10-30 01:23:10 30 4
gpt4 key购买 nike

我目前有一个异步 TCP/IP 套接字 C# WinForms 应用程序,它是“服务器”应用程序。该应用程序持有客户端的持久套接字。我想实现一个心跳包来检测半开连接。

最初我只想创建一个循环并每隔 xx 秒将心跳发送到我的整个套接字集合。但是,我认为这对性能不利。

我想我应该以某种方式错开心跳并一次发送到几百个套接字。有没有人有任何经验/技术/实现来有效地实现这一目标?

最佳答案

我这样做(对于数量级更多的套接字)只是通过跟踪我上次与特定套接字通话(或从中听到)是在多长时间前。在一个时间间隔内,我对给定年龄以上的人执行 ping 操作。假设套接字统一连接/断开连接/通信,这给了我一个相当均匀的分布。此外,您始终可以将每次迭代的 ping 限制在有限数量的套接字上:因为您正在跟踪上次谈话的信息,所以您没有接触到的套接字下次仍然符合条件。

关于c# - 如何在 2500 多个套接字上实现 TCP/IP 心跳?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11959951/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com