我一直在阅读Redis的文档,the example they have for GETSET is just "Hello World"。我想不出一个我可以使用GETSET的具体情况,但是通过推送或插入列表并不能更好地处理它。什么是一些特定的用例,当旧的值必须被原子检索,但不存储?原子GETSET操作有哪些用例?
0
A
回答
0
该文档介绍了原子计数器的获取和重置模式,但通常此命令适用于您希望在以原子方式获取上一个值时设置的(字符串)值的任何情况。就我个人而言,我没有看到广泛使用的命令,因此我无法为其他用例作证。
列表方法可以用于类似的效果,但是当您弹出某个元素时,您将更改列表本身 - 旧值不再存在,并且可能会有其他操作(除非使用MULTI/EXEC)你推动新的价值。
+1
在现实世界中,GETSET可以用作手动过期管理基于SETNX的锁定(http://redis.io/commands/setnx)的一部分,或者用于具有任意时间步骤的重置计数器。例如,从上次访问发生X事件。所以你可以捕捉计数器的值并将其重置为一个命令。 – misterion 2014-10-29 07:28:35
相关问题
- 1. 关于随机写入操作,“附加操作”有哪些例子?
- 2. Redis中的哈希上的原子GETSET
- 3. 原子方式有哪些用途?
- 4. 哪些整数操作在ios/arm平台上是原子的?
- 5. File.Move原子操作
- 6. 非原子操作
- 7. DerbyJS原子操作
- 8. 原子操作 - C
- 9. RESTful API应具有哪些操作?
- 10. 原子操作和原子交易
- 11. 用户操作触发哪些浏览器之前触发哪些操作?
- 12. Rust中where子句的特征可能有哪些操作符?
- 13. 使用LINQ执行这些操作的方法有哪些?
- 14. 什么操作都是原子操作
- 15. 原子操作中断所有内核
- 16. 在一些非原子操作中使用ConcurrentLinkedQueue
- 17. Redis中的原子操作
- 18. x86 128位原子操作
- 19. Riak的原子操作?
- 20. 拉推原子操作?
- 21. Django中的原子操作?
- 22. CUDA原子操作列表
- 23. CUDA中的原子操作
- 24. 写一个原子操作
- 25. 让两个操作原子
- 26. Qt原子操作实现
- 27. ARM中的原子操作
- 28. 原子操作在C++
- 29. window.localStorage上的原子操作
- 30. 挥发和原子操作
你可以添加一个指向你在问题中提到的文档的链接吗? – 2014-10-27 10:38:59
我添加了链接 – Kaan 2014-10-27 10:46:02