简单介绍
看其名称便知道这个都是读写原子的类。最终的原因是因为volatile修饰了内部的变量 (源码)。这些在多线程的应用中应用很多。
AtomicReference 为原子的引用,这个可以有泛型的形式
AtomicBoolean 这个是原子的布尔值
AtomicInteger 这个是原子的int值
大部分都是通过get 和 set 方法来获取值和设置值
样例代码
我这块直接上样例代码(我这里只列举comparAndSet的用法 get set方法非常简单)
String initialReference = "initial value referenced";
AtomicReference<String> atomicStringReference =
new AtomicReference<String>(initialReference);
String newReference = "new value referenced";
boolean exchanged = atomicStringReference.compareAndSet(initialReference, newReference);
System.out.println("exchanged: " + exchanged);
System.out.println(atomicStringReference.get());
exchanged = atomicStringReference.compareAndSet(initialReference, newReference);
System.out.println("exchanged: " + exchanged);
System.out.println(atomicStringReference.get());
网友评论