为了账号安全,请及时绑定邮箱和手机立即绑定

AtomicInteger.getAndIncrement() 中的数字重复

AtomicInteger.getAndIncrement() 中的数字重复

RISEBY 2021-05-31 08:47:55
当对返回值感兴趣时,是否有可能在 的情况下AtomicInteger.getAndIncrement(),调用此方法的两个线程将获得相同的值?在这种情况下,AtomicInteger.incrementAndGet()由于首先发生增量,两个线程将获得不同的值。
查看完整描述

2 回答

?
红糖糍粑

TA贡献1815条经验 获得超6个赞

无论getAndIncrementincrementAndGet方法保证唯一性的返回值。

可以认为这两种方法之间的关系如下(a-AtomicInteger类变量):

a.IncrementAndGet() == a.getAndIncrement() + 1


查看完整回答
反对 回复 2021-06-02
?
慕容3067478

TA贡献1773条经验 获得超3个赞

双方incrementAndGetgetAndIncrement因为它们将满足您的要求

以原子方式将给定值添加到当前值。

区别在于:

incrementAndGet 返回更新的值

getAndIncrement 返回当前值


查看完整回答
反对 回复 2021-06-02
  • 2 回答
  • 0 关注
  • 676 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信