Java并发编程之原子操作类实战教程

Posted 孔子-说

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java并发编程之原子操作类实战教程相关的知识,希望对你有一定的参考价值。

在java.util.concurrent.atomic包下的类(简称JUC)对原子操作提供了强大的支持,atomic 翻译成中文是原子的意思,是指一个操作是不可中断的。即使是在多个线程一起执行的时候,一个操作一旦开始,就不会被其他线程干扰,所以,所谓原子类说简单点就是具有原子操作特征的类,原子操作类提供了一些修改数据的方法,这些方法都是原子操作的,在多线程情况下可以确保被修改数据的正确性。根据修改的数据类型,可以将JUC包中的原子操作类可以分为4类。

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

这些类存在的目的是对相应的数据进行原子操作。所谓原子操作,是指操作过程不会被中断,保证数据操作是以原子方式进行的。几乎所有的原子操作都是基于CAS实现的,具体教程:Java并发编程之CAS应用实战

1、基本类型原子类

使用原子的方式更新基本类型,Atomic包提供了以下3个类。

AtomicInteger 具体教程: Java并发编程之原子操作类AtomicInteger详解
AtomicLong 具体教程: Java并发编程之原子操作类AtomicLong详解
AtomicBoolean 具体教程: Java并发编程之原子操作类AtomicBoolean实战详解

2、数组类型原子类

通过原子的方式更新数组里的某个元素,Atomic包提供了以下3个类。

AtomicIntegerArray 具体教程: Java并发编程之原子操作类AtomicIntegerArray实战详解
AtomicLongArray 具体教程: Java并发编程之原子操作类AtomicLongArray实战详解
AtomicReferenceArray 具体教程: Java并发编程之原子操作类AtomicReferenceArray实战详解

3、引用类型原子类

通过原子的方式更新更新引用类型,Atomic包提供了以下3个类。

AtomicReference 具体教程: Java并发编程之原子操作类AtomicReference实战详解
AtomicStampedReference 具体教程: Java并发编程之原子操作类AtomicStampedReference实战详解
AtomicMarkableReference 具体教程: Java并发编程之原子操作类AtomicMarkableReference实战详解

4、对象的属性修改类型原子类

通过原子的方式更新对象的属性类型,Atomic包提供了以下3个类。

AtomicReferenceFieldUpdater 具体教程: Java并发编程之原子操作类AtomicReferenceFieldUpdater实战详解
AtomicIntegerFieldUpdater 具体教程: Java并发编程之原子操作类AtomicIntegerFieldUpdater实战详解
AtomicLongFieldUpdater 具体教程: Java并发编程之原子操作类AtomicLongFieldUpdater实战详解

以上是关于Java并发编程之原子操作类实战教程的主要内容,如果未能解决你的问题,请参考以下文章

Java并发编程之原子操作类实战教程

Java并发编程实战之互斥锁

Java并发编程实战之互斥锁

java并发编程实战笔记

Java多线程之原子操作类

java并发编程之原子类