zoukankan      html  css  js  c++  java
  • delphi tidhttp 超时的解决方案

    现在delphi都发布到xe10.1了,tidhttp还有缺陷,那就是超时设置在没有网络或者连不上服务器的时候是无效的,不管你设置为多少都要10-20秒。connectTimeout和readTimeout都试过了,网上找了一圈,有人提出修改源码,我没试,应该也可以。
    我采用的是把idhttp.get方法放到线程里,在主线程定时检查返回状态,这样就可以控制超时时间了,代码如下。
     1 strResult:='';
     3 Tthread.CreateAnonymousThread(
     4  procedure
     5  begin
     6    strResult := idhttp.get('url');
     7 end).Start;
     8  
     9 for i := 0 to 4 do
    10 begin
    11   if strResult<>'' then
    12             break;
    13   application.ProcessMessages;
    14   Tthread.Sleep(500);
    15   application.ProcessMessages;
    16 end;
  • 相关阅读:
    git命令
    svg学习系列02-简单的svg图形和线条
    svg学习系列01-svg简介
    jQuery分页插件
    svg简介
    css3选择器
    sublime使用
    HTML5新特性
    html新的语义化标签和表单控件
    DOM详解
  • 原文地址:https://www.cnblogs.com/delphi7456/p/5494738.html
Copyright © 2011-2022 走看看