T:对,在编程中,原子操作就是指不可再分的操作,原子性就是指一段代码象原子一样不可再分,一次只能有一个线程执行这段代码,即代码的执行是互斥的。 J:我明白了,那可见性呢? T:可见性指一个变量在一个线程中的修改能够被其它所有使用该变量的线程看到。 J:我大概明白他们是什么意思了,但还不清楚在什么情况...
我理解一个操作不可再分,即为原子性。而在并发编程的环境中,原子性的含义就是只要该线程开始执行这一系列操作,要么全部执行,要么全部未执行,不允许存在执行一半的情况。 老生常谈的银行转账情况用于理解(仅限于理解,真实的银行转账没这么简单): A账户向B账户转钱,A账户转出1万元,银行就必须保证B账户收到1万元,...
1. 原子性 原子性:即一个操作或者多个操作,要么全部执行,并且执行的过程不会被任何因素打断,要么就都不执行。 在Java中,对基本数据类型的变量的读取和赋值操作是原子性操作,即这些操作是不可被中断的,要么执行,要么不执行。 上面一句话虽然看起来简单,但是理解起来并不是那么容易。看下面一个例子: x = 10; /...