首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >java -对对象内字段的原子访问

java -对对象内字段的原子访问
EN

Stack Overflow用户
提问于 2011-07-13 04:57:22
回答 3查看 1.6K关注 0票数 5

如果我需要原子访问对象中的整型字段,将该字段声明为AtomicInteger就足够了吗?或者我需要使用AtomicIntegerFieldUpdater吗?(为什么?)

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-07-13 05:05:43

使用AtomicInteger就足够了。原子更新器用于volatile字段;主要的用例是具有大量需要原子访问的字段的数据结构;您可以使用字段更新器将这些字段与原子语义结合使用,而无需为每个字段提供AtomicInteger引用。

有关详细讨论,请参阅this link

票数 6
EN

Stack Overflow用户

发布于 2011-07-13 05:30:11

AtomicInteger和朋友通常应该足够了,而且通常更可取,因为它不涉及反射或其他类似的黑客行为。

在有大量实例需要更新的情况下,AtomicIntegerFieldUpdater会很有用,因为这会减少对象的总数。如果除了直接读取和写入之外的操作很少使用,那么它就特别有用。例如,在java.nio中使用AtomicReferenceFieldUpdater作为attach方法,该方法通常设置一次(公开为get- and - set )并读取多次。

票数 1
EN

Stack Overflow用户

发布于 2011-07-13 05:10:53

除了biziclop的评论(参见链接):

Are java primitive ints atomic by design or by accident?

以防你还没有遇到这个问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6671020

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档