我创建了一个使用dbx连接到mysql数据库的小应用程序。它适用于我的本地mysql服务器,但它应该适用于远程服务器。
连接到远程服务器需要几秒钟,冻结应用程序。
所以我的问题是,如何将连接代码放在不同的线程中?
我必须以某种方式将该连接传递给主线程,以便我在主窗体上的dbgrid有效。
我读到在不同线程中工作的db东西应该有自己的连接。所以我不确定如何做我想做的事。
有什么想法吗?有关使用远程服务器的任何内容吗?
感谢。
编辑:我在表单上使用的组件是:TSQLConnection - > TSimpleDataSet> TDataSource> TDBGrid中。
答案 0 :(得分:1)
如果您的线程要同时进行数据库访问,则每个线程只需要一个连接。基本上你想要的是一个线程连接,并在建立连接后回复你。您可以在一个线程中执行此操作,并且当线程准备就绪(即建立连接)时,它可以将消息发送回主线程,以使其知道dbx连接现在可用。有关如何设置线程以及在线程和主VCL线程之间进行通信的信息,请参阅本教程。 Threading Tutorial
答案 1 :(得分:0)
这确实帮助我在rad studio中做了多线程应用程序 Writing multi-threaded applications Index
如果他们发布任何其他事情并且生病了,请尝试帮助