Java -- Thread -- Collection -- 8Java5原子性操作类的应用

Java5的线程并发库

       java.util.concurrent在并发编程中很常用的实用工具类。

                     |----locks为锁和等待条件提供一个框架的接口和类,

          它不同于内置同步和监视器

                     |----atomic类的小工具包,支持在单个变量上解除锁的线程安全编程。

                            可以对基本类型、数组中的基本类型、类中的基本类型等进行操作

                            |----AtomicInteger

构造方法摘要

AtomicInteger()           创建具有初始值 0 的新 AtomicInteger。

AtomicInteger(int initialValue)           创建具有给定初始值的新 AtomicInteger。

方法摘要

 int

addAndGet(int delta)           以原子方式将给定值与当前值相加。

 boolean

compareAndSet(int expect, int update)           如果当前值 == 预期值,则以原子方式将该值设置为给定的更新值。

 int

decrementAndGet()           以原子方式将当前值减 1。

 double

doubleValue()           以 double 形式返回指定的数值。

 float

floatValue()           以 float 形式返回指定的数值。

 int

get()           获取当前值。

 int

getAndAdd(int delta)           以原子方式将给定值与当前值相加。

 int

getAndDecrement()           以原子方式将当前值减 1。

 int

getAndIncrement()           以原子方式将当前值加 1。

 int

getAndSet(int newValue)           以原子方式设置为给定值,并返回旧值。

 int

incrementAndGet()           以原子方式将当前值加 1。

 int

intValue()           以 int 形式返回指定的数值。

 void

lazySet(int newValue)           最后设置为给定值。

 long

longValue()           以 long 形式返回指定的数值。

 void

set(int newValue)           设置为给定值。

 String

toString()           返回当前值的字符串表示形式。

 boolean

weakCompareAndSet(int expect, int update)           如果当前值 == 预期值,则以原子方式将该设置为给定的更新值。

|----AtomicIntegerArray

构造方法摘要

AtomicIntegerArray(int length)           创建给定长度的新 AtomicIntegerArray。

AtomicIntegerArray(int[] array)           创建与给定数组具有相同长度的新 AtomicIntegerArray,并从给定数组复制其所有元素。

方法摘要

 int

addAndGet(int i, int delta)           以原子方式将给定值与索引 i 的元素相加。

 boolean

compareAndSet(int i, int expect, int update)           如果当前值 == 预期值,则以原子方式将位置 i 的元素设置为给定的更新值。

 int

decrementAndGet(int i)           以原子方式将索引 i 的元素减 1。

 int

get(int i)           获取位置 i 的当前值。

 int

getAndAdd(int i, int delta)           以原子方式将给定值与索引 i 的元素相加。

 int

getAndDecrement(int i)           以原子方式将索引 i 的元素减 1。

 int

getAndIncrement(int i)           以原子方式将索引 i 的元素加 1。

 int

getAndSet(int i, int newValue)           将位置 i 的元素以原子方式设置为给定值,并返回旧值。

 int

incrementAndGet(int i)           以原子方式将索引 i 的元素加 1。

 void

lazySet(int i, int newValue)           最后将位置 i 的元素设置为给定值。

 int

length()           返回该数组的长度。

 void

set(int i, int newValue)           将位置 i 的元素设置为给定值。

 String

toString()           返回数组当前值的字符串表示形式。

 boolean

weakCompareAndSet(int i, int expect, int update)           如果当前值 == 预期值,则以原子方式将位置 i 的元素设置为给定的更新值。

holder

posted on 2016-04-24 19:46  yeatschen  阅读(86)  评论(0)    收藏  举报

导航