Hiredis asynchronous



我正在开发一个简单的应用程序,该应用程序使用hiredis的异步方面,hiredis是Redis的官方C客户端。作为第一步,我尝试编译github repo中可用的示例程序。我使用在Ubuntu 20.04上运行的gcc版本9.3.0进行编译。

编译失败,错误消息为:

未找到

aeEventLoop定义。

我在所有的头文件和代码文件中搜索了那个结构。但是,我找不到这样的定义。

请告知如何解决此问题。非常感谢。

我发现它的aeEventLoop结构是在ae.h中定义的,ae.h是Redis源文件的一部分。使用Redis源代码编译的问题是,发行版支持的Re-dis版本(至少是稳定版本(通常比Redis网站上可下载的Redis版本旧得多。例如,Redis 5.0.7在Ubuntu 20.04 LTS上可用;Redis 6.2.4可在Redis网站上下载。因此,如果可以完成编译,需要下载旧版本的源代码。

Hiredis支持许多不同的事件库,如libevent、libev、glib、qt等。AE是Redis(服务器(中使用的事件库,与Hiredis一起使用需要Redis中的一些文件,但其他事件库都不依赖于Redis源代码。我建议您尝试libevent或libev。

使用具有不同事件库的异步API的示例:https://github.com/redis/hiredis/tree/master/examples

相关内容

  • 没有找到相关文章

最新更新