java Atomic 原子唯一操作

private static AtomicInteger number = new AtomicInteger();
number.getAndIncrement()private static AtomicInteger counter = new AtomicInteger(0);
public int getCount ( ) {
    return counter.incrementAndGet();
}

对于 AtomicInteger、AtomicLong还提供了一些特别的方法。
getAndIncrement( ):以原子方式将当前值加 1,相当于线程安全的i++操作。
incrementAndGet( ):以原子方式将当前值加 1, 相当于线程安全的++i操作。
getAndDecrement( ):以原子方式将当前值减 1, 相当于线程安全的i–操作。
decrementAndGet ( ):以原子方式将当前值减 1,相当于线程安全的–i操作。
addAndGet( ): 以原子方式将给定值与当前值相加, 实际上就是等于线程安全的i =i+delta操作。
getAndAdd( ):以原子方式将给定值与当前值相加, 相当于线程安全的t=i;i+=delta;return t;操作。
以实现一些加法,减法原子操作。(注意 --i、++i不是原子操作,其中包含有3个操作步骤:第一步,读取i;第二步,加1或减1;第三步:写回内存)

猜你喜欢

转载自blog.csdn.net/fzy629442466/article/details/85601366