【发布时间】:2017-02-10 08:47:20
【问题描述】:
调用 idTelnet.Connect 通常会立即连接到远程设备。
但是,
如果远程设备没有响应,
那么对 idTelnet.Connect 的调用不会返回。
它等待来自远程设备的响应。
这会挂起整个应用程序。
如何设置超时,以便 idTelnet.Connect 在 nn ms 内返回
无论是否建立连接?
【问题讨论】:
-
我建议在后台线程中运行代码。
-
是否有 ConnectTimeout 属性?如果没有,我会尝试当前的 Indy 10.6.2
-
在 Indy 10 中,
TIdTCPClient具有ConnectTimeout属性。在 Indy 9 中,没有ConnectTimeout属性,但Connect()有一个可选的ATimeout参数。