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

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

复制代码
1
2
keys := []string{"nn", "mm"} _, err = con.Do("lpush", queueName, keys)

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

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

复制代码
1
2
3
4
5
args := []interface{}{queueName} for _, val := range keys { args = append(args, val) } _, err = con.Do("lpush", args...)

或者一种更简单的方式:

复制代码
1
_, err = con.Do("lpush", redis.Args{}.Add(queueName).AddFlat(keys)...)

结果:

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

复制代码
1
_, err = con.Do("zrem", redis.Args{}.Add(ZsetName).AddFlat(Keys)...)

 

最后

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

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

评论列表共有 0 条评论

立即
投稿
返回
顶部