在IdTCPServer1Connect事件中使用AThread.Connection.ReadLn()读取数据,再进行一些处理 ,最后 AThread.Connection.Disconnect。
这样出现 接收到一定的次数后就无法接收数据了。
是AThread缓存区的数据溢出???如果是怎么处理。
如果不是,又怎么处理,谢谢大家。在线等待 。
这样出现 接收到一定的次数后就无法接收数据了。
是AThread缓存区的数据溢出???如果是怎么处理。
如果不是,又怎么处理,谢谢大家。在线等待 。
把 AThread.Connection.Disconnect改成 AThread.Terminate倒是可以 ,只是速度慢了比较多
还有更好的方法么,比如怎么清空IdTCPServer1接收的数据
如果服务器端没有Disconnect 的话,可以接收很多数据,可是传输的速度会减慢(发送数据的间隔时间),如果有Disconnect 则发送速度很快。
另外,估计你代码在其它地方有错.
不要在OnExecute事件中调用AThread.Terminate,它可能破坏INDY线程池管理机制