
这是因为当redis-cli显示与订阅关联的消息时,不会自动刷新标准输出。因此,停止redis-cli之前的最后一条消息不会出现在输出文件中。
没有可以用来强制执行系统刷新的选项,需要修补redis-cli.c。在Redis源代码中,编辑src / redis-
cli.c,然后找到以下代码。添加缺少的fflush行。
if (config.pubsub_mode) { if (config.output != OUTPUT_RAW) printf("Reading messages... (press Ctrl-C to quit)n"); while (1) { if (cliReadReply(output_raw) != REDIS_OK) exit(1); // The following line must be added fflush(stdout); } }一旦重新编译了redis-cli,它便会按预期工作。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)