没长正的技术专栏 勤动手、多思考

高并发之Atomic

2018-08-02

阅读:


1. Atomic

​ java.util.concurrent包提供了 Atomic原子类型及其操作,保证了原子性。无锁的方式实现了线程安全,其主要利用了CAS:Compare and Set。

1.1 常见类

AtomicInteger、AtomicLong ….

2021-11-27_Atomic类型

1.2 AtomicInteger常见用法

  • 增加值并返回新值:int addAndGet(int delta)
  • 加1后返回新值:int incrementAndGet()
  • 获取当前值:int get()
  • 用CAS方式设置:int compareAndSet(int expect, int update)

1.3 应用场景

多线程下计数器、累加器

class IdGenerator {
    AtomicLong num = new AtomicLong(0);    
    public static long getNextId() {
        return num.incrementAndGet();
    }
}

参考:

使用Atomic


欢迎拍砖,多多交流,转载请注明出处:[没长正的技术专栏](http://blog.meizhangzheng.com) 如涉及侵权问题,请发送邮件到xsj34567@163.com,如情况属实本人将会尽快删除。


上一篇 高并发安全性

Comments

Content