谷歌搜索mysql的异步/非阻塞连接器我基本上去了这篇文章
然而,已经有 2 年了,在毛毛雨上发生的事情现在有点令人困惑。libdrizzle 在某些时候是一个单独的依赖项,但他们决定将其与项目的其余部分合并。从 C++ 访问异步数据库还有其他选择吗?
谷歌搜索mysql的异步/非阻塞连接器我基本上去了这篇文章
然而,已经有 2 年了,在毛毛雨上发生的事情现在有点令人困惑。libdrizzle 在某些时候是一个单独的依赖项,但他们决定将其与项目的其余部分合并。从 C++ 访问异步数据库还有其他选择吗?
我有同样的愿望,得出的结论是它不被支持。即使使用 MySQL C API,您也可以使用低级函数来发出查询并异步等待响应,但是您永远无法获得完整的异步结果集合——您总是从结果的第一部分开始就阻塞返回到最后。
我没有直接的经验,但我读过 Postgres 确实支持完全异步(至少在 C API 中)。
我曾经在自己的项目中使用过MySAC 。它运作良好,虽然有点过时。我只是引用他们网站上的描述:
MySAC 是一个库,它提供了对 MySQL 数据库进行异步请求的机制。
如果你使用 libuv ,也许你会对https://github.com/huxingyi/myc感兴趣。它是我写的一个纯c mysql连接器,你可以实现自己的网络层或者只使用example文件夹中libuv
的实现。uvmyc