gpt4 book ai didi

c# - 在 C# 应用程序中维护大量打开的套接字

转载 作者:行者123 更新时间:2023-11-30 15:07:54 24 4
gpt4 key购买 nike

我正在用 C# 编写一个应用程序,我想在其中维护大量打开的套接字连接 (tcp),并能够响应来自所有这些连接的数据。现在,通常要做的事情 (afaik) 是对所有这些调用 BeginRead,但据我所知,BeginRead 会生成一个线程并等待该线程中的数据,而且我已经读到线程不会当使用大量它们时往往会很好地扩展。虽然我对此可能是错误的,但如果是这样的话请告诉我。

这可能听起来很愚蠢,但我想要的是能够保持尽可能多的开放套接字连接(在我的机器/操作系统允许的情况下),同时仍然能够对来自其中任何一个的数据使用react尽可能快,并尽可能少地使用系统资源。

我想过的是将它们全部放在某种列表中,然后在它们上循环运行一个线程来检查新数据并对该新数据(如果有的话)采取行动,尽管我我会认为这样的循环最终会烧掉我的 CPU(因为循环中没有任何东西会阻塞)。有什么方法(简单与否,我不介意使用一些更复杂的算法来解决这个问题)可以实现这一目标?任何帮助将不胜感激。

最佳答案

关于c# - 在 C# 应用程序中维护大量打开的套接字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6152272/

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