0
如果一個班級有一個私人AtomicReference
成員,並且它僅調用AtomicReference#get
和AtomicReference#set
,那麼它是否安全並且(b)用空值volatile
成員替換該成員是否有用?什麼時候用volatile成員替換AtomicReference是合適的?
如果一個班級有一個私人AtomicReference
成員,並且它僅調用AtomicReference#get
和AtomicReference#set
,那麼它是否安全並且(b)用空值volatile
成員替換該成員是否有用?什麼時候用volatile成員替換AtomicReference是合適的?
如回答here,如果您只是使用get()
和set()
方法,兩者之間沒有真正的區別。
安全嗎?是。
它有用嗎?值得商榷的是,考慮未來可能需要哪些附加功能。如果你想保持儘可能簡單,volatile(可能)提供稍好的可讀性。我通常堅持AtomicReference
,因爲我不能總是預測未來的需求,我不太喜歡在可以避免時更改變量類型。