当对返回值感兴趣时,是否有可能在 的情况下AtomicInteger.getAndIncrement(),调用此方法的两个线程将获得相同的值?在这种情况下,AtomicInteger.incrementAndGet()由于首先发生增量,两个线程将获得不同的值。
2 回答
红糖糍粑
TA贡献1815条经验 获得超6个赞
无论getAndIncrement
和incrementAndGet
方法保证唯一性的返回值。
可以认为这两种方法之间的关系如下(a
-AtomicInteger
类变量):
a.IncrementAndGet() == a.getAndIncrement() + 1
慕容3067478
TA贡献1773条经验 获得超3个赞
双方incrementAndGet
并getAndIncrement
因为它们将满足您的要求
以原子方式将给定值添加到当前值。
区别在于:
incrementAndGet
返回更新的值
getAndIncrement
返回当前值
添加回答
举报
0/150
提交
取消