Delphi:TIdTCPClient disconnect don';不要关闭连接
我正在调查活动TCP连接的增长 似乎Delphi:TIdTCPClient disconnect don';不要关闭连接,delphi,tcp,indy,delphi-10.1-berlin,Delphi,Tcp,Indy,Delphi 10.1 Berlin,我正在调查活动TCP连接的增长 似乎TIdTCPClient。断开连接不要关闭连接 这是一个示例项目 program Project2; {$APPTYPE CONSOLE} {$R *.res} uses System.SysUtils, IdTCPClient; var FClient: TIdTCPClient; begin try FClient := TIdTCPClient.Create(); FClient.Connect('LOCALHOS
TIdTCPClient。断开连接不要关闭连接
这是一个示例项目
program Project2;
{$APPTYPE CONSOLE}
{$R *.res}
uses
System.SysUtils,
IdTCPClient;
var
FClient: TIdTCPClient;
begin
try
FClient := TIdTCPClient.Create();
FClient.Connect('LOCALHOST', 6379);
FClient.Disconnect;
FClient.Free;
except
on E: Exception do
Writeln(E.ClassName, ': ', E.Message);
end;
end.
多次打开此控制台应用程序会导致连接增长
netstat -na | find "6379"
旁注:我在柏林10、Windows 7上(但在Windows 10上相同)连接已关闭TIME\u WAIT
表示本地端点(此端)已关闭连接
参考:连接已关闭TIME\u WAIT
表示本地端点(此端)已关闭连接
参考:断开连接()
正在关闭连接。TIME\u WAIT
状态是正常的TCP行为
无论哪个对等方首先主动关闭TCP连接(在本例中为您的客户端),其套接字端点都会进入TIME\u WAIT
状态,这是TCP的一项安全功能,可以丢弃该连接中剩余的任何散乱数据包。一旦TIME\u WAIT
超时,端点将在几分钟后完全释放
在另一个对等方上,被动接收关闭通知的对等方,其套接字端点进入CLOSE\u WAIT
状态,并在另一个对等方ACK
关闭后释放。那边没有等待时间
请参阅,其中对什么是TIME\u WAIT
进行了非常长的讨论,讨论了它存在的原因以及如何有效地使用它。Disconnect()
正在关闭连接。TIME\u WAIT
状态是正常的TCP行为
无论哪个对等方首先主动关闭TCP连接(在本例中为您的客户端),其套接字端点都会进入TIME\u WAIT
状态,这是TCP的一项安全功能,可以丢弃该连接中剩余的任何散乱数据包。一旦TIME\u WAIT
超时,端点将在几分钟后完全释放
在另一个对等方上,被动接收关闭通知的对等方,其套接字端点进入CLOSE\u WAIT
状态,并在另一个对等方ACK
关闭后释放。那边没有等待时间
请看,这将进入一个非常长的讨论,讨论什么是时间等待,它为什么存在,以及如何有效地使用它。“另一方尚未承认结束”——这不是时间等待的含义。看见事实上,在另一方确认关闭之前,你不能进入TIME\u WAIT
。“另一方尚未确认关闭”-这不是TIME\u WAIT的意思。看见事实上,在对方确认关闭之前,你不能进入时间等待。