一. 原子更新基本类型
-
AtomicBoolean:原子更新布尔类型。
-
AtomicInteger:原子更新整型。
-
AtomicLong:原子更新长整型。
二. 原子更新数组
-
AtomicIntegerArray:原子更新整型数组里的某个元素。
-
AtomicLongArray:原子更新长整型数组里的某个元素。
-
AtomicReferenceArray:原子更新引用类型数组里的某个元素。
三. 原子更新引用类型
原子更新基本类型的原子类,只能更新一个变量,如果需要原子更新多个变量,则需要使用原子更新引用类型的原子类。
-
AtomicReference:原子更新引用类型。
-
AtomicStampedReference:原子更新带有版本号的引用类型,可解决CAS的ABA问题。
-
AtomicMarkableReference:原子更新带有标记位的引用类型。
四. 原子更新类字段
-
AtomicIntegerFieldUpdater:原子更新整型的类字段的更新器。
-
AtomicLongFieldUpdater:原子更新长整型的类字段的更新器。
-
AtomicReferenceFieldUpdater:原子更新引用类型的类字段的更新器。
注意:
- 通过各自的静态方法newUpdater()创建一个更新器,并设置想要更新的类和其中的属性(字段);
- 想要更新的类的属性(字段)必须使用 public volatile 修饰;
网友评论