gpt4 book ai didi

delphi - 可以在线程中使用 TADOConnection

转载 作者:行者123 更新时间:2023-12-03 14:56:49 25 4
gpt4 key购买 nike

我已经创建了一个 TCPip 服务器应用程序。该应用程序有一个全局 TADOConnection。此全局 ado 连接既可用于主线程查询,也可用于线程进程内。

这样可以吗? ADOConnection 是否具有同时处理多个查询的内置机制?

我的应用程序可以在测试环境(2-5 个连接)中找到。但在生产环境中部署时,当链接到 ADOConnection 的 TADOQuery 设置为打开时,我遇到了“无法解释的”访问冲突。

我应该使用 ADOConnection 还是所有查询都应该自行连接到数据库(这可能会消耗更多的资源)?

最佳答案

每个线程都需要有自己的连接对象。以下链接提供了更多信息:http://delphi.about.com/od/kbthread/a/query_threading.htm

文章中的一些要点:

1] 在使用任何 dbGo 对象之前,必须手动调用 CoInitialize 和 CoUninitialize。未能调用 CoInitialize 将导致“CoInitialize was not called”异常。 CoInitialize 方法在当前线程上初始化 COM 库。 ADO 是 COM。

2] 您不能从主线程(应用程序)使用 TADOConnection 对象。每个线程都需要创建自己的数据库连接。

关于delphi - 可以在线程中使用 TADOConnection,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3266532/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com