Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/65.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 异步c++;mysql连接器_C++_Mysql_Database_Asynchronous_Libdrizzle - Fatal编程技术网

C++ 异步c++;mysql连接器

C++ 异步c++;mysql连接器,c++,mysql,database,asynchronous,libdrizzle,C++,Mysql,Database,Asynchronous,Libdrizzle,在谷歌上搜索mysql的异步/非阻塞连接器,我基本上是这样做的 然而,已经过去了2年,接下来发生在毛毛雨上的事情现在有点让人困惑。libdrizzle在某个时候是一个独立的依赖项,但他们决定将其与项目的其余部分合并。对于C++数据库的异步数据库访问还有其他的选择吗? 我一直在看和,但它们似乎都是同步的(需要一个单独的线程来执行非阻塞操作)我也有同样的愿望,并得出结论,它不受支持。即使使用MySQL C API,您也可以使用低级函数异步发出查询并等待响应,但您永远无法获得完整的异步结果集合——从返

在谷歌上搜索mysql的异步/非阻塞连接器,我基本上是这样做的

然而,已经过去了2年,接下来发生在毛毛雨上的事情现在有点让人困惑。libdrizzle在某个时候是一个独立的依赖项,但他们决定将其与项目的其余部分合并。对于C++数据库的异步数据库访问还有其他的选择吗?
我一直在看和,但它们似乎都是同步的(需要一个单独的线程来执行非阻塞操作)

我也有同样的愿望,并得出结论,它不受支持。即使使用MySQL C API,您也可以使用低级函数异步发出查询并等待响应,但您永远无法获得完整的异步结果集合——从返回结果的第一部分到最后一部分,您始终会被阻塞

我对它没有直接的经验,但我读到Postgres确实支持完全异步(至少在C API中是这样)。

我曾经在我自己的项目中使用过。虽然有点过时,但它运行良好。我只是引用他们网站上的描述:

MySAC是一个库,它提供了向MySQL数据库发出异步请求的机制


如果使用libuv,您可能会感兴趣。这是我编写的一个纯c mysql连接器,您可以实现自己的网络层,或者只使用示例文件夹中基于已实现的
libuv
uvmyc

异步连接有什么用?您仍然需要同步到其完成,值得怀疑的是,在长时间的连接设置过程中,有多少事情可以有效地完成,而一旦建立了连接,这些事情就无法轻松快速地完成。连接是问题中最小的一个,因为它大部分时间都是启动和重用一段时间的:真正的问题是查询不应该阻塞当前的线程可以用来做其他事情