C++ Builder 2010,自带INDY 10,IdTCPServer开发的服务程序,网络链接不能及时销毁。
开发环境:C++ Builder 2010,自带INDY 10,IdTCPServer开发的服务程序。
客户环境:Windows 2008 R2,SQL Server 2012。
在OnConnect事件中有如下代码:
1、发现重复IP,就会断开前面的链接。
2、记录下当前列表和IdTCPServer->Contexts->LockList()->Count的数量,发现都很正常,数量很少,几乎都是个位数。
但是问题来了。
使用cports扫描,没断开的链接数高达几千个。
最后把服务器累死。
服务程序中断开链接的方法是
AContext->Connection->Disconnect();
哪位大牛给分析一下,可能的原因是什么??
这个程序在其他地方也用过,都没啥问题。
为何在这里却出这样的事?????