我想知道如何在 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 在有读/写操作时被调用,但在等待服务器时并非如此。