什么是原子性操作

在多进程(线程)访问共享资源时,能够确保所有其他的进程(线程)都不在同一时间内访问相同的资源,(要么完全执行,要么完全不执行)

简单描述

有个变量X=0,要进行+1操作,步骤如下:

  • 读取x;
  • 取得+1的计算结果
  • 写入x

现在有人进行另一个操作 +2;步骤如下;

  • 读取x;
  • 取得+2计算结果
  • 写入x

如果操作不是原子性的,指令就会错乱,得到的结果可能是1,2,3情况均可能出现;
如果操作是原子性的,就可以保证在进行加1操作的时候其他操作无法插入进来,在完成操作后他才能开始进行他的操作,从而保证数据是可靠的。

redis的原子性

Redis所有单个命令的执行都是原子性的,这与它的单线程机制有关;
Redis命令的原子性使得我们不用考虑并发问题,可以方便的利用原子性自增操作 实现简单计数器功能;

相关文章:

  • 2022-12-23
  • 2021-07-03
  • 2022-12-23
  • 2021-11-27
  • 2021-08-01
  • 2021-09-09
  • 2021-12-31
  • 2021-06-24
猜你喜欢
  • 2022-12-23
  • 2021-12-22
  • 2021-08-06
  • 2021-04-28
  • 2022-02-19
  • 2022-12-23
相关资源
相似解决方案