我是靠谱客的博主 专一日记本,这篇文章主要介绍redigo批量lpush/rpush、批量zrem,现在分享给大家,希望可以做个参考。

在使用redigo库时,想批量向redis list中批量push,发现像下面方式传入[]string是不行的,在这里记录一下。

keys := []string{"nn", "mm"}
_, err = con.Do("lpush", queueName, keys)

直接传slice发现结果是整个slice被拼在一起放到一起了:

 后来google了下,发现需要将slice用三个点(...)打散后传入,类似于这种:

args := []interface{}{queueName}
for _, val := range keys {
    args = append(args, val)
}
_, err = con.Do("lpush", args...)

或者一种更简单的方式:

_, err = con.Do("lpush", redis.Args{}.Add(queueName).AddFlat(keys)...)

结果:

同理zrem批量删除redis zset中的值时,也需要使用这种方式:

_, err = con.Do("zrem", redis.Args{}.Add(ZsetName).AddFlat(Keys)...)

 

最后

以上就是专一日记本最近收集整理的关于redigo批量lpush/rpush、批量zrem的全部内容,更多相关redigo批量lpush/rpush、批量zrem内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(147)

评论列表共有 0 条评论

立即
投稿
返回
顶部