redis的原子性
2024-08-27 22:31:55
什么是原子性操作
在多进程(线程)访问共享资源时,能够确保所有其他的进程(线程)都不在同一时间内访问相同的资源,(要么完全执行,要么完全不执行)
简单描述
有个变量X=0,要进行+1操作,步骤如下:
- 读取x;
- 取得+1的计算结果
- 写入x
现在有人进行另一个操作 +2;步骤如下;
- 读取x;
- 取得+2计算结果
- 写入x
如果操作不是原子性的,指令就会错乱,得到的结果可能是1,2,3情况均可能出现;
如果操作是原子性的,就可以保证在进行加1操作的时候其他操作无法插入进来,在完成操作后他才能开始进行他的操作,从而保证数据是可靠的。
redis的原子性
Redis所有单个命令的执行都是原子性的,这与它的单线程机制有关;
Redis命令的原子性使得我们不用考虑并发问题,可以方便的利用原子性自增操作 实现简单计数器功能;
最新文章
- 《转载》Java异常处理的10个最佳实践
- loj 1044(dp+记忆化搜索)
- Eclipse-将svn上的项目转化成相应的项目
- 论职务犯罪案件侦查 z
- 网页a标签:导航制作 怎么让鼠标经过A标签的时候显示块状背景?
- Arduino 数码管LED屏驱动
- 接口-以PHP为例
- 拾遗与填坑《深度探索C++对象模型》3.2节
- 第一次跑eureka
- Python练习七
- 【mysql】字段类型和长度的解释
- 洛谷3825 [NOI2017]游戏 2-sat
- DataTable插件报错:Uncaught TypeError: Cannot read property 'style' of undefined
- java-Set集合、HashSet集合、LinkedHashSet集合和TreeSet集合
- MT【17】利用柯西不等式求三角的最大值
- 力扣(LeetCode)219. 存在重复元素 II
- Linus运行jar包的操作
- js学习(初)
- mysql主从延迟(摘自http://www.linuxidc.com/Linux/2012-02/53995.htm)
- shell while 语句