Delphi SQLConnection连接中间件超时的问题?

814123 2021-05-23 08:08:28
我使用SQLConnection连接服务器的中间件,如果服务器开启了服务,很快就可以连接,如果服务器关闭了服务,这边的SQLConnection就要等待15秒的时间才提示连接失败。
我测试用多线程在后台倒计时,5秒没有连接成功就提示重新连接,但不成功,必须要等到SQLConnection给提示后,我的多线程倒计时才给提示,我测试了一下午,用了很多办法都不行,好像SQLConnection1.Connected := True时所有的界面和线程都停止了一样,有没有大神给予解决的办法呢?
...全文
2418 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
hj8090 2021-05-26
  • 打赏
  • 举报
回复
启动2个线程,一个连接一个计时,比如,计数器超5秒就表示连接超时。
BlueStorm 2021-05-24
  • 打赏
  • 举报
回复
最简单的方法,就是用Telnet检查一下中间件的端口是否可以连接,来确定中间件是否在运行: uses System.SysUtils, System.Classes, IdTelnet; function Telnet(Host, Port: String; TimeOut: Integer = 1000): Boolean; var Telnet: TIdTelnet; begin Telnet := TIdTelnet.Create(nil); Telnet.ConnectTimeout := TimeOut; Telnet.Host := Host; Telnet.Port := Port.ToInteger; Result := True; try Telnet.Connect; except on E: Exception do Result := False; end; Telnet.Free; end;
yuzhizhi 2021-05-23
  • 打赏
  • 举报
回复
ProcessMessages 循环相应外部事件
doloopcn 2021-05-23
  • 打赏
  • 举报
回复
在代码前一行加入application.proce**message;忘记怎么拼写了

2,498

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧