常用语多线程中,确保线程安全,自我感觉和线程锁差不多(原理大致相同)
public final static AtomicLong a = new AtomicLong();
默认参数为0,当然可以自定义
public final static AtomicLong a = new AtomicLong(10);
a.get() 获得当前值
public final long incrementAndGet() 以原子方式将当前值加 1。
返回:更新的值
a.incrementAndGet()
public final long decrementAndGet() 以原子方式将当前值减 1。
a.decrementAndGet()
返回:更新的值
更多方法api有详细介绍
用AtomicLong可以确保使用时当前资源独一无二,避免因线程抢占cpu导致数据混乱