你可以打断一个Indy连接电话吗?

Gre*_*ndt 3 delphi indy c++builder

我有一个连接,我给了20秒超时(慢速链接).我需要允许我的用户取消此连接呼叫.

我已经在一个线程中发生了连接,这样我就可以保持GUI的运行,但是如何告诉Indy取消?我还必须从主线程调用取消,因为连接调用被阻止.这可能吗?

这适用于C++ Builder,但Delphi的答案也可以.

Rem*_*eau 8

中止Connect()的唯一方法是从与调用Connect()的线程上下文不同的线程上下文中调用Disconnect().在这种情况下,您的主线程可以直接调用Disconnect(),然后您的线程可以处理Connect()引发的异常响应.