java多线程--原子类

Posted 通凡

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java多线程--原子类相关的知识,希望对你有一定的参考价值。

java1.8中的原子操作的类在包java.util.concurrent.atomic下面,全部包括如下:

  • AtomicBoolean
  • AtomicInteger
  • AtomicIntegerArray
  • AtomicIntegerFieldUpdater
  • AtomicLong
  • AtomicLongArray
  • AtomicLongFieldUpdater
  • AtomicMarkableReference
  • AtomicReference
  • AtomicReferenceArray
  • AtomicReferenceFieldUpdater
  • AtomicStampedReference
  • DoubleAccumulator
  • DoubleAdder
  • LongAccumulator
  • LongAdder

java1.8对原子类进行了扩充,是它们其中一些更加高效,新增加的类如下,具体情况会在后边提到:

  • DoubleAccumulator
  • DoubleAdder
  • LongAccumulator
  • LongAdder

根据修改的数据类型,可以将JUC包中的原子操作类可以分为4类。

1. 基本类型: AtomicInteger, AtomicLong(LongAdder),DoubleAdder, AtomicBoolean ;
2. 数组类型: AtomicIntegerArray, AtomicLongArray, AtomicReferenceArray ;
3. 引用类型: AtomicReference, AtomicStampedRerence, AtomicMarkableReference ;
4. 对象的属性修改类型: AtomicIntegerFieldUpdater, AtomicLongFieldUpdater, AtomicReferenceFieldUpdater 。

这些类存在的目的是对相应的数据进行原子操作。所谓原子操作,是指操作过程不会被中断,保证数据操作是以原子方式进行的。

以上是关于java多线程--原子类的主要内容,如果未能解决你的问题,请参考以下文章

Java多线程系列--“JUC原子类”03之 AtomicLong原子类

java基础---多线程---JUC原子类

多线程与并发Java中的12个原子操作类

java多线程系类:JUC原子类:05之AtomicIntegerFieldUpdater原子类

Java多线程系列---“JUC原子类”06之 AtomicLongFieldUpdater原子类

Java多线程系列---“JUC原子类”04之 AtomicLongArray原子类