- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我制作了一个使用 dbx 连接到 mysql 数据库的小应用程序。它适用于我的本地 mysql 服务器,但它应该适用于远程服务器。
连接到远程服务器需要几秒钟,这会卡住应用程序。
所以我的问题是,如何将连接代码放在不同的线程中?
我必须以某种方式将该连接传递给主线程,这样主窗体上的 dbgrid 才能正常工作。
我读到在不同线程中工作的数据库应该有自己的连接。所以我不确定如何做我想做的事。
有什么想法吗?关于使用远程服务器有什么要读的吗?
谢谢。
编辑:我在表单上使用的组件是:TSQLConnection -> TSimpleDataSet > TDataSource > TDBGrid。
最佳答案
如果您的线程要同时访问数据库,您只需要每个线程一个连接。基本上你想要的是一个线程连接,并在连接建立后返回给你。您可以在线程中执行此操作,当线程就绪(即建立连接)时,它可以向主线程发回一条消息,让其知道 dbx 连接现在可用。有关如何设置线程以及线程与主 VCL 线程之间通信的想法,请参阅本教程。 Threading Tutorial
关于mysql - 单独的 dbx 连接到线程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2051459/
根据我正在调试的平台,我同时使用 GDB 和 DBX。我需要调试一个工具,其中需要传递 20 个命令行参数。 GDB 有一个选项,您可以在 gdb 启动时传递这些参数: gdb --args ...
我正在尝试为 dbx 在 solaris 上编写 pretty-print 路由以漂亮地打印 map 。现在 map 可能包含(一个)任意类型的元素。我不想知道它们是什么或处理它们。我想让 dbx 自
好吧,过去让 DBX 与 MySQL 一起工作让我非常头疼。在这样的情节中,我试图让它与 Delphi 2007 一起工作,我花了很多时间寻找正确的 libmysql.dll 和 dbxmys.dll
我在 RHEL6.1 上使用最新版本的 dbxtool (Solaris Studio)。 我正在完成教程示例 here使用他们的示例代码,但是当尝试在生成的核心文件上运行 dbxtool 时,我得到
在 gdb 中,如果我只是按回车键,它会重复上一个命令。有没有办法配置 Sun/Oracle/Solaris dbx 来做同样的事情? 最佳答案 看起来您可以为此使用 $repeatmode 。 我从
好吧,I managed get the delegate driver to set up properly,但是连接池仍然给我带来了很多麻烦。 从文档中给出的描述来看,连接池似乎应该像这样工作:
我有 Delphi XE Professional。它附带了大量的 DBX 功能,包括包含连接池支持的 DBXPool 单元,但它没有 XE Enterprise 中提供的完整 DBX 支持。特别是,
我在 AIX 上工作,有一个进程不断崩溃。我从未检查过核心文件,如果可能的话,我希望得到一些指导。我正在使用 dbx。我如何才能 (a) 确保核心文件到达我希望它到达的位置,以及 (b) 在崩溃之前查
我想在 dbx 中打印 C 字符串的完整长度。如何强制 dbx 打印整个字符串? if its a long string it gives following msg: (dbx) p svalue
我通常使用 dbx 来调试 C 代码。 我们如何记录从我启动到在 dbx 中触发退出命令的整个 dbx session ? 最佳答案 如果dbx中没有特定的方式,可以使用脚本。 在启动 dbx 之前,
我需要检测 Solaris 上 dbx 中某些内存何时发生变化。我知道在 gdb 中我会用 watch 来做到这一点.但是,我现在正在使用 dbx,所以我需要知道如何在 dbx 中设置硬件观察点。设
我正在 Solaris 上使用 dbx 调试我的 C 程序,我希望能够看到数据结构的内容。 它是作用域内函数中的局部数据结构,因此键入“dump”会显示指向该结构的指针。但是,我想看看其中各个字段的内
我制作了一个使用 dbx 连接到 mysql 数据库的小应用程序。它适用于我的本地 mysql 服务器,但它应该适用于远程服务器。 连接到远程服务器需要几秒钟,这会卡住应用程序。 所以我的问题是,如何
我每天都在为我在 Solaris10 上的 C++ 开发做 TDD。它大大减少了我必须花在调试器上的时间,但有时这是唯一的选择。 DBX 非常强大,但用户友好度不高。请注意,我说的是控制台 DBX,而
看起来 TSQLConnection 只连接到现有数据库,我找不到另一个允许我向数据库服务器发送命令的组件。 我正在使用 Delphi 2009 以及 Firebird 和 MSSQL。 出现的一个想
我正在 Solaris 上的 ddd 中运行 dbx。附加的进程已崩溃,我可以检查调试器中的堆栈。 我想将此核心转储保存到磁盘以供以后使用。 Google 向我展示了几种创建核心转储的方法,但它们都不
我正在尝试将 Dropbox 选择器插入式 API 集成到我的应用程序中。我遇到了一个不正常的问题。在我的应用程序中,当我启动 dbx 选择器时,每当我选择文件时,应用程序都会失败,并显示以下错误代码
我正在调试程序的内存泄漏问题。启用“check -memuse”时出现以下错误: Write to unallocated (wua) on thread 1: Attempting to write
我想将数据从旧的 Tomcat/Jetty 网站迁移到运行在 Python 和 Django 上的新网站。理想情况下,我想通过直接从旧数据库中读取数据并将它们存储在新数据库中来填充新网站。 问题是给我
这可能是一个真正的问题,但我在这里问是因为当我在面试中被问到这个问题时我毫 headless 绪。 我们如何调试由另一个线程创建的线程?假设有一个主进程,它调用函数 pthread_create 创建
我是一名优秀的程序员,十分优秀!