java 數據操作 原子性

java中 基本類型簡單的賦值操作都屬於原子操作 比如 int x;x=10; 

又比如y=x; x++;等操作其實是兩步操作,單步都是原子操作,合起來就不是了,再多線程高併發下就會出現問題

valatile關鍵字保證了可見性,被修改的值會被立即更新到內存,但是依然不能保證原子性.

保證原子性方法:

1.將x++封裝到方法,用synchronized 修飾該方法

2.還是將操作提到方法中 用lock

3. 變量用AtomicXXX修飾.

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章