- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
我将 HiRedis 与 c/c++ 程序一起使用,并编写了一些测试来验证订阅是否有效(我的解决方案基于 this comment)。
但是,目前我只能通过在 redis-cli
终端中手动输入类似 publish foo "abcd"
的内容来发布。这按照链接的评论工作,但我想发布来自我的 c++ 程序。我该怎么做?
我试过这个命令:
redisAsyncCommand(c, SubCallback, (char*)"command", "publish foo \"abcd\"");
但这会导致此运行时错误:
Error: ERR only (P)SUBSCRIBE / (P)UNSUBSCRIBE / QUIT allowed in this context
如何从 HiRedis 中发布数据?
最佳答案
一旦连接上下文被订阅,它就不能用于发布。您必须创建一个新连接。
关于c++ - 如何使用 HiRedis 异步发布,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32302962/
我正在开发一个简单的应用程序,它使用 Redis 的官方 C 客户端hiredis 的异步方面。作为第一步,我尝试编译the github repo 中的示例程序。 .我正在使用在 Ubuntu 20
我正在使用hiredis C library连接到我的 redis 实例。我正在考虑更改我的 redis.conf 以启用 requirepass 选项。我知道对于 redisConnect() 我只
我正在尝试使用 hiredis 编写连接池。我面临的问题是,如果用户触发命令但没有从连接读取响应,我应该在放入连接池之前清除该连接的响应。 有没有办法检查: 是否有更多数据要读取?所以我可以做 red
我正在使用 hiredis C client library在异步上下文中与 Redis 交互。 在我的工作流程的某些点上,我必须对 Redis 进行同步调用,但我无法从 Redis 获得成功响应。
我正在尝试在断开连接时重新连接到 Redis 服务器。 我正在使用 redisAsyncConnect 并且我已经设置了断开连接时的回调。在回调中,我尝试使用在程序开始时使用的相同命令重新连接以建立连
我正在使用 hiredis C 库连接到 redis 服务器。我不知道如何在订阅新消息后等待新消息。 我的代码如下: signal(SIGPIPE, SIG_IGN ); struct event
我正在为 Varnish 使用一个名为 libvmod-redis 的 redis 集成插件.我遇到一个问题,如果我收到大量并发请求(大约 350 个),redis 就会开始超时,最终我会在 Varn
我是 redis 新手。我想编写一个位于hiredis顶层的简单库(用于测试)。例如,为了实现 SET 命令,我编写了以下代码: #include #include #include #include
我正在尝试使用 hiredis 将结构SET 放入 Redis: struct StatLite { uid_t uid; gid_t gid; mode_t mode; }
我正在尝试在 CentOS 上以 C 运行 hiredis。 下面的代码似乎运行良好: ... const char *hostname = "my.redis-as-a-service.com";
我将 HiRedis 与 c/c++ 程序一起使用,并编写了一些测试来验证订阅是否有效(我的解决方案基于 this comment)。 但是,目前我只能通过在 redis-cli 终端中手动输入类似
reply = redisCommand(rcontext,"HGET %u %u",env->cr[3] ,KeyHandle); if(reply == NULL) { printf("in pr
如何使用 hiredis API 断开与 redis 服务器的连接?有 API 可以连接,但我找不到关闭连接的函数?redisFree 会自动执行此操作吗? 最佳答案 redisFree() 确实会关
我在多线程环境中使用 Redis,对它的运行方式有疑问。我在我的 c++ 应用程序中使用 hiredis c 库。 我的问题是:如果我在触发回调时使用异步模式,是否会在 Redis 客户端创建的另一个
我在 Kali Linux 2019.4 上使用以下命令安装了 Redis 服务器: $ redisurl="http://download.redis.io/redis-stable.tar.gz"
我想用 C 编译 redis 的客户端。我已经下载并安装了 libevent 库和 hiredis 文件。我用过这个命令: gcc -I/home/tasos/Dropbox/lists/hiredi
考虑以下示例: #include #include #include #include int main(int argc, char **argv) { redisContext *re
我有以下在 C 中使用 Redis 的代码。以 hiredis 为基础。 #include #include #include #include int main(int argc, char
我安装了redis服务器,可以从命令行使用它。现在,我想使用 hiredis 编写一个客户端程序。首先,我尝试编译 hiredis 目录中的 example.c: vishal@expmach:~/r
我正在尝试将一个多词字符串推送到一个 Redis 键但是每个词都被添加为一个新元素我怎样才能避免这种情况 #include #include #include #include int m
我是一名优秀的程序员,十分优秀!