Я обнаружил, что при установке свойства ConnectTimeoout для компонента TIdHTTP, это заставляет запросы (GET и POST) становиться примерно на 120 мс медленнее?
Почему это так, и можно ли как-то избежать / обойти это?
Конверт: D2010 с поставляемыми компонентами Indy, все обновления установлены для D2010. ОС WinXP (32bit) SP3 с большинством исправлений ...
Моя процедура синхронизации:
Procedure DoGet;
Var
Freq,T1,T2 : Int64;
Cli : TIdHTTP;
S : String;
begin
QueryPerformanceFrequency(Freq);
Try
QueryPerformanceCounter(T1);
Cli := TIdHTTP.Create( NIL );
Cli.ConnectTimeout := 1000; // without this we get < 15ms!!
S := Cli.Get('http://127.0.0.1/empty_page.php');
Finally
FreeAndNil(Cli);
QueryPerformanceCounter(T2);
End;
Memo1.Lines.Add('Time = '+FormatFloat('0.000',(T2-T1)/Freq) );
End;
С установленным ConnectTimeout в коде я получаю среднее значение. время 130-140 мс, без 5-15 мс ...