Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/go/7.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
如何使用redigo库使用Blpop_Go_Redis - Fatal编程技术网

如何使用redigo库使用Blpop

如何使用redigo库使用Blpop,go,redis,Go,Redis,我正在使用github.com/gomodule/redigo/redis库 LPOP正在工作: Queue := "queue1" conn.Do("LPOP", Queue) 如何将Blpop用于多个队列(动态数组,从配置文件读取) 这不会获取任何记录。每个列表都是BLPOP命令的单独参数 对Redigo客户端的每个Redis参数使用一个函数参数 resp, err = conn.Do(“BLPOP”, “q1”, “q2”, 0) 使用redis

我正在使用github.com/gomodule/redigo/redis库

LPOP正在工作:

Queue := "queue1"
conn.Do("LPOP", Queue)
如何将Blpop用于多个队列(动态数组,从配置文件读取)


这不会获取任何记录。

每个列表都是BLPOP命令的单独参数

对Redigo客户端的每个Redis参数使用一个函数参数

resp, err = conn.Do(“BLPOP”, “q1”, “q2”, 0)
使用redis.Args从切片创建参数列表:

resp, err := c.Do("BLPOP", redis.Args{}.AddFlat(QueueArray).Add(0)...)

谢谢@MuffinTop的回答。但是,我想动态地传递这个QueueArray。@Sumit编辑问题以陈述需求并读取更新的答案。
resp, err := c.Do("BLPOP", redis.Args{}.AddFlat(QueueArray).Add(0)...)