原创

java AtomicInteger getAndUpdate方法的原子性

温馨提示:
本文最后更新于 2024年04月12日,已超过 48 天没有更新。若文章内的图片失效(无法正常加载),请留言反馈或直接联系我

如果有一个 AtomicInteger,并且其调用 getAndUpdate 方法,它会是原子的吗?(下面的例子)例如有2个线程,是否可以保证第二个调用会获得更新的版本?

AtomicInteger ai = new AtomicInteger(0); // initialized in constructor
...
int value = ai.getAndUpdate(x -> (x+1) % 4); // called in some method

我希望第二次调用总是能获得更新的版本,但由于 lamdba 函数内部的模数和增量操作,我不确定这是否是原子操作。

正文到此结束
热门推荐
本文目录