原子性和原子性操作

Posted 开飞机的贝塔

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了原子性和原子性操作相关的知识,希望对你有一定的参考价值。

在运维知识学习中,经常涉及到原子性原子性操作的概念,下面就来详细说说。

先看一个例子:

 

张三银行账号有1000元,李四银行账号有2000元。现在李四需要往张三账号转1000元。

李四银行账号刚转出1000元,设备故障,张三银行账号没有收到1000元汇款。

结果是,李四银行账号1000元,张三银行账号1000元。

 

上面的例子明显不应该发生,这就需要当设备故障时,李四转出的1000元自动退回账号中。就像没操作之前的一样。

 

这种要么操作100%完成,要么无操作的特性,就叫做原子性。

而符合原子性的操作就是原子性操作。

 

以上是关于原子性和原子性操作的主要内容,如果未能解决你的问题,请参考以下文章

volatile关键字原子性和可见性

原子性内存可见性和重排序——重新认识synchronized和volatile

理解事务(ACID)——原子性一致性隔离性和持久性

可见性原子性和有序性

原子性、可见性、有序性

为什么volatile能保证有序性不能保证原子性