Java concurrent 之 AtomicInteger

java concurrent 之 AtomicInteger

AtomicInteger类提供了一个可以被原子地读取和写入的int变量,还包含像compareAndSet()这样的高级原子操作。 AtomicInteger类位于java.util.concurrent.atomic包中,因此完整的类名称为java.util.concurrent.atomic.AtomicInteger。 本文描述了Java 8中发现的AtomicInteger的版本,但第一个版本是在Java 5中添加的。

创建一个AtomicInteger

AtomicInteger atomicInteger = new AtomicInteger();

也可以初始化

AtomicInteger atomicInteger = new AtomicInteger(123);

获取AtomicInteger值

AtomicInteger atomicInteger = new AtomicInteger(123);

int theValue = atomicInteger.get();

赋值

AtomicInteger atomicInteger = new AtomicInteger(123);

atomicInteger.set(234);

比较赋值

AtomicInteger atomicInteger = new AtomicInteger(123);

int expectedValue = 123;
int newValue      = 234;
atomicInteger.compareAndSet(expectedValue, newValue);

增值操作 (见名之意,不在详述)

  • addAndGet()
  • getAndAdd()
  • getAndIncrement()
  • incrementAndGet()

减值操作 (见名之意,不在详述)

  • decrementAndGet()
  • getAndDecrement()
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容