0

如果我将 TIdSchedulerOfThreadPool 分配给我的 IdTCPServer,我是否仍会受到同时连接数的限制?

我的 IdTCPServer 属性是:

 ListenQueue : 30
   MaxConnections : 0
   ReuseSocket rsTrue
   Scheduler :MyIdSchedulerOfThreadPool
   TerminateWaitTime : 5000

MyIdSchedulerOfThreadPool 的属性:

Scheduler: MyIdSchedulerOfThreadPool
MaxThreads = 0
PoolSize = 0
ThreqdPriority = tpNormal

无编码;我只是将 MyIdSchedulerOfThreadPool 分配给调度程序。


4

1 回答 1

2

TIdTCPServer.MaxConnections属性控制一次允许连接多少个同时客户端。

TIdSchedulerOfThread.MaxThreads属性控制一次允许运行多少个并发线程(空闲或其他)。

TIdSchedulerOfThreadPool.PoolSize属性控制一次允许池中同时有多少个空闲线程。

因此,当您TIdSchedulerOfThread...分配时,最大同时连接数实际上是MaxConnectionsMaxThreads属性之间的较小值,因为每个客户端连接都需要一个线程来管理它。

于 2013-09-05T20:13:27.930 回答