IdSchedulerOfThreadPool是否限制同时连接计数?

时间:2013-09-05 19:40:00

标签: delphi indy realthinclient

如果我将一个TIdSchedulerOfThreadPool分配给我的IdTCPServer,我仍然会被限制为同时连接的数量吗?

我的IdTCPServer属性是:

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

MyIdSchedulerOfThreadPool的属性:

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

没有编码;我只是将MyIdSchedulerOfThreadPool分配给Scheduler。


1 个答案:

答案 0 :(得分:2)

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

TIdSchedulerOfThread.MaxThreads属性控制一次允许同时运行的线程数(空闲或其他)。

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

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