java.util.concurrent.atomic包里,多了一批原子处理类。AtomicBooleanAtomicIntegerAtomicLongAtomicReference。主要用于在高并发环境下的高效程序处理,来帮助我们简化同步处理.

AtomicInteger一个提供原子操作的Integer的类。在Java语言中,++ii++操作并不是线程安全的,在使用的时候,不可避免的会用到synchronized关键字。而AtomicInteger则通过一种线程安全的加减操作接口。

我们先来看看AtomicInteger提供了什么接口:

1
2
3
4
5
public final int get() //获取当前的值
public final int getAndSet(int newValue)//获取当前的值,并设置新的值
public final int getAndIncrement()//获取当前的值,并自增
public final int getAndDecrement() //获取当前的值,并自减
public final int getAndAdd(int delta) //获取当前的值,并加上预期的值

下面通过两个简单的例子来看一下 AtomicInteger 的优势。

普通线程同步:

 

点击链接查看详细内容

posted on 2017-08-11 11:11  SXT  阅读(174)  评论(0编辑  收藏  举报