我有一个客户端不断尝试连接TIdTCPServer
,如下所示:
if not Form1.tcpSender.Connected then
try
sleep(2000);
Form1.tcpSender.Connect;
except
if Form1.tcpSender.IOHandler <> nil then
Form1.tcpSender.IOHandler.InputBuffer.Clear;
end
这很好用。实际上它工作得很好,即使我关闭我的服务器应用程序它仍然重新连接。
但是当我重新启动服务器时,它会抛出错误说:
无法绑定套接字。地址和端口已在使用中。
这很奇怪,因为我没有为服务器使用单独的线程,所以我假设TIdTCPServer
在应用程序关闭后以某种方式保持活动状态。
我可以以某种方式更好地终止它吗?