Cómo configurar el tiempo de espera de conexión para IDHTTP
Ahora Delphi se lanzó a xe8, pero tidhttp todavía tiene una falla, es decir, cuando no hay red o el servidor no se puede conectar, la configuración del tiempo de espera no es válida, no importa cuánto lo configure, tomará entre 10 y 20 segundos. . Probé tanto connectTimeout como readTimeout. Después de buscar en Internet, algunas personas sugirieron modificar el código fuente. No lo he probado, pero debería ser posible. No lo he probado, pero debería funcionar.
Lo que hice fue poner el método idhttp.get en un hilo y verificar el estado de retorno regularmente en el hilo principal, para poder controlar el tiempo de espera. El pseudocódigo es el siguiente.
strResult:= '';
Tthread.CreateAnonymousThread(
procedimiento
comenzar
strResult:= idhttp.get('url');
end).start;
para i := 0 a 4,
comenzar
si strResultlt;gt;'' entonces
romper;
application.ProcessMessages;
Tthread.Sleep(500);
aplicación.ProcessMessages;
fin;