【问题标题】:Using multithreading for making queries in Delphi在 Delphi 中使用多线程进行查询
【发布时间】:2009-08-16 17:19:45
【问题描述】:

我最近一直在应用线程来对 MYSQL 数据库进行查询,我使用 MyDAC 连接到 DB,因为 TMyConnection 不允许每个连接同时进行查询,我为每个连接创建一个新连接和一个新查询对象执行查询的线程,因此在某些时间可能会发生服务器每个客户端有多个连接。如果我们为几个连接到数据库的客户端考虑这种情况,我想这将是一个问题。在查询中使用线程是否有更好的解决方案?

提前致谢

【问题讨论】:

    标签: delphi multithreading mydac


    【解决方案1】:

    使用第二层,您可以在其中汇集一些连接(您可以使用 datasnap 或 remobjetcs...),这样您就可以重用所有用户的连接并将连接数量保持在较小的级别。

    【讨论】:

    • 您知道我在哪里可以获得您的解决方案的示例项目吗?或者,你能告诉我有什么书可以让我对这个问题有更多的了解吗?谢谢
    • 在 Google 中查找 Datasnap 2009,有大量关于它的信息、视频和演示文稿。示例应用程序可以是cc.embarcadero.com/Item/26057。对于 remObjects SDK:devcenter.remobjects.com/articles/?id={761A0669-1445-4B5F-908C-6DE3ACC3ABA4}
    【解决方案2】:

    看看 Cary Jansen 的文章叫

    Using Semaphores in Delphi, Part 2: The Connection Pool

    他详细介绍了如何为有限数量的数据库连接提供线程安全访问

    获取 code 以使用 MyDac - TMyConnection 很简单。

    【讨论】:

      猜你喜欢
      • 2021-01-28
      • 1970-01-01
      • 1970-01-01
      • 2023-03-12
      • 2015-09-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-02-14
      相关资源
      最近更新 更多