我刚刚了解到你可以使用线程池进行多客户端TCP连接,我今天有一个C#应用程序,我想实现它。我已经阅读了一些内容,例如这个问题的第一个答案(Best way to accept multiple tcp clients?),但我真的不知道如何使最后的调整与我的“需求”一起工作。我为每个连接都有一个messagehandeling函数(每个连接是2个线程,一个用于接收/发送消息(连接打开一段时间很长的moste),另一个用于执行任务,具体取决于消息(也创建回发的回复)我现在想在下面的链接中使用接收方法,但是如何在我的示例中使用线程池来执行此操作?
如果有什么不清楚,只需提问!
/尼克
答案 0 :(得分:0)
避免每个连接有一个线程。它会在操作系统上产生大量开销,并且无法很好地扩展。
今天我们使用NIO:非阻塞I / O.一个线程可以处理10k +连接。有很简单的方法可以使用它们,比如NodeJs。 NIO库可用于大多数平台/语言(Netty for Java,NodeJs with javascript,...)。
您应该指定您正在使用的语言/环境。