This question already has answers here:
Java volatile reference vs. AtomicReference
(5个答案)
2年前关闭。
如果一个类有一个私有的
(5个答案)
2年前关闭。
如果一个类有一个私有的
AtomicReference
成员,并且只调用AtomicReference#get
和AtomicReference#set
,那么用一个可为空的volatile
成员替换它(a)安全和(b)有用吗? 最佳答案
按照here的回答,如果只使用get()
和set()
方法,则两者之间没有真正的区别。
安全吗?是。
它有用吗?值得商bat的,考虑您将来可能需要哪些附加功能。如果您想使其尽可能简单,那么volatile可能会(可以说)提供更好的可读性。我通常会坚持使用AtomicReference
,因为我不能总是预测未来的需求,并且我不太喜欢在可以避免的情况下更改变量类型。
10-03 00:15