java之AtomicInteger 公平吗
lhb25
阅读:45
2024-06-03 14:00:57
评论:0
是否 AtomicInteger提供任何形式的公平保证?像先到先服务的线程执行顺序就可以了? Victor Grazi's concurrent animated 上的动画示例绝对没有表现出任何这样的公平。我已经搜索过,但没有找到任何结论。
请您参考如下方法:
不,没有这样的保证。如果有的话,会在文档中详细说明。
仔细想想,AtomicInteger
基本上是 compare-and-swap 的一个薄包装器。 (或类似的)。保证先到先服务的语义将需要线程之间的同步,这是昂贵的,并且与 AtomicInteger
的想法相反。
事情是这样的,如果有多个线程想要同时 incrementAndGet()
相同的原子整数,它们完成比赛的顺序是不确定的。
声明
1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。