3

我想知道如何在 Delphi Seattle 中断开 TIdHTTP 的实例,同时它在 OmniThreadLibrary 的 CreateTask 的匿名过程中执行。

我当前的代码如下所示:

task := CreateTask(
procedure(const task: IOmniTask)
var
  http: TIdHTTP;
begin

  http := TIdHTTP.Create;

  try
    http.Get('http://192.168.1.14/stats.php?recalc');
  finally
    http.Free;
  end;

end).Run;

请求有时需要很长时间(如 40-60 秒),用户应该有机会中止请求。

我知道使用 TIdHTTP 的 OnWork 事件,但在我的情况下这不合适。OnWork 在有读/写操作时被调用,但在等待服务器时并非如此。

4

0 回答 0