3、volatile和synchronized的作用和区别是什么?
4、CAS机制详解
5、ReentrantLock(重入锁)详解
六、ReenTrantLock可重入锁(和synchronized的区别)总结
0、相关文章:
=======
Java中线程安全的体现(原子性、可见性、有序性)(自己的)
1、synchronized关键字的作用
====================
synchronized 美 [ˈsɪŋkrənaɪzd] 同步 synchronize的过去分词和过去式
synchronized提供了同步锁的概念,被synchronized修饰的代码段可以防止被多个线程同时执行,必须一个线程把synchronized修饰的代码段都执行完毕了,其他的线程才能开始执行这段代码。 因为synchronized保证了在同一时刻,只能有一个线程执行同步代码块,所以执行同步代码块的时候相当于是单线程操作了,那么线程的可见性、原子性、有序性(线程之间的执行顺序)它都能保证了。
2、volatile关键字的作用
================
volatile 美 [ˈvɑːlətl] 不稳定的,易挥发的