Thread线程安全四

volatile关键字和原子操作:atomic

volatile 意思是易变的,不稳定的。作用是告诉编译器,凡是被该关键字声明的变量都是易变。

对于易变的变量最好不要进行锁操作,容易造成死锁。被volatile修饰的变量,线程从主内存中读取后,进行操作,之后并不一定立刻刷性主内存中的变量。volatile只提供了内存的可见性,没有提供原子性。所以用来做高并发是不可靠的。

volatile适合用于一个线程修改,多个线程读取的时候。

原子操作:atomic

atomic不会阻塞线程,线程安全的加强版volatile。在java.util.concurrent.atomic包里,多了一批原子处理类,主要用于高并发环境下的程序处理。

基本类:AtomicInteger、AtomicLong、AtomicBoolean

引用类型:AtomicRefernce等

猜你喜欢

转载自blog.csdn.net/qq_36213444/article/details/89417777
今日推荐