ODBC 是否支持异步调用?如果是这样,那么你能告诉我任何参考资料吗?
我的首选语言是 C++。
这篇 MSDN 文章可能是您的起点:执行语句 ODBC:异步执行
来自文章:
Windows 7 SDK 中的 ODBC 3.8 引入了对连接相关操作的异步执行……应用程序使用轮询方法确定异步操作已完成。从 Windows 8 SDK 开始,您可以使用通知方法确定异步操作是否完成。
我想知道完全相同的事情。一个明显的解决方法是维护一个线程池,每个线程池都执行同步的 ODBC 调用并异步发出信号(和返回信号)。
通常,这些东西似乎是在应用程序的另一个抽象级别实现的,或者您自己滚动。几乎任何涉及可阻塞“打开”动作的东西都可以产生一个线程,用于管理打开并在发生时在全局某处发出信号或设置标志。
一些框架非常适合提供两种风格。想到了 Flex,它有助于它使用单个浏览器/javascript/swf 线程来发挥作用。
异步 ODBC 函数是 ODBC 驱动程序提供的功能。
在 ODBC3.8 之前,只有与语句相关的调用可以启用异步。启动 ODBC3.8 连接相关的函数调用也可以启用异步。
当然,我们可以在应用程序端实现任何缺少的功能,但是在驱动程序中实现它可以减少应用程序端的痛苦。
我正在寻找一个完整的驱动程序列表,其中清楚地说明驱动程序是否支持开箱即用的异步调用。如果有人知道,请指给我这样的清单。