java.lang.Object java.lang.Number java.util.concurrent.atomic.AtomicLong
public class AtomicLong
可以用原子方式更新的 long
值。有关原子变量属性的描述,请参阅 java.util.concurrent.atomic
包规范。AtomicLong
可用在应用程序中(如以原子方式增加的序列号),并且不能用于替换 Long
。但是,此类确实扩展了 Number
,允许那些处理基于数字类的工具和实用工具进行统一访问。
构造方法摘要 | |
---|---|
AtomicLong() 创建具有初始值 0 的新 AtomicLong。 |
|
AtomicLong(long initialValue) 创建具有给定初始值的新 AtomicLong。 |
方法摘要 | |
---|---|
long |
addAndGet(long delta) 以原子方式将给定值添加到当前值。 |
boolean |
compareAndSet(long expect, long update) 如果当前值 == 预期值,则以原子方式将该值设置为给定的更新值。 |
long |
decrementAndGet() 以原子方式将当前值减 1。 |
double |
doubleValue() 以 double 形式返回指定的数值。 |
float |
floatValue() 以 float 形式返回指定的数值。 |
long |
get() 获取当前值。 |
long |
getAndAdd(long delta) 以原子方式将给定值添加到当前值。 |
long |
getAndDecrement() 以原子方式将当前值减 1。 |
long |
getAndIncrement() 以原子方式将当前值加 1。 |
long |
getAndSet(long newValue) 以原子方式设置为给定值,并返回旧值。 |
long |
incrementAndGet() 以原子方式将当前值加 1。 |
int |
intValue() 以 int 形式返回指定的数值。 |
void |
lazySet(long newValue) 最后设置为给定值。 |
long |
longValue() 以 long 形式返回指定的数值。 |
void |
set(long newValue) 设置为给定值。 |
String |
toString() 返回当前值的字符串表示形式。 |
boolean |
weakCompareAndSet(long expect, long update) 如果当前值 == 预期值,则以原子方式将该值设置为给定的更新值。 |
从类 java.lang.Number 继承的方法 |
---|
byteValue, shortValue |
从类 java.lang.Object 继承的方法 |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
构造方法详细信息 |
---|
public AtomicLong(long initialValue)
initialValue
- 初始值
public AtomicLong()
0
的新 AtomicLong。
方法详细信息 |
---|
public final long get()
public final void set(long newValue)
newValue
- 新值
public final void lazySet(long newValue)
newValue
- 新值
public final long getAndSet(long newValue)
newValue
- 新值
public final boolean compareAndSet(long expect, long update)
==
预期值,则以原子方式将该值设置为给定的更新值。
expect
- 预期值
update
- 新值
public final boolean weakCompareAndSet(long expect, long update)
==
预期值,则以原子方式将该值设置为给定的更新值。
可能意外失败并且不提供排序保证,所以只能在很少的情况下对 compareAndSet
进行适当地选择。
expect
- 预期值
update
- 新值
public final long getAndIncrement()
public final long getAndDecrement()
public final long getAndAdd(long delta)
delta
- 要添加的值
public final long incrementAndGet()
public final long decrementAndGet()
public final long addAndGet(long delta)
delta
- 要添加的值
public String toString()
public int intValue()
public long longValue()
public float floatValue()
Number
复制的描述
float
形式返回指定的数值。这可能会涉及到舍入。
Number
中的
floatValue
float
类型后该对象表示的数值。
public double doubleValue()
Number
复制的描述
double
形式返回指定的数值。这可能会涉及到舍入。
Number
中的
doubleValue
double
类型后该对象表示的数值。