java多線程中如何保證變量的可見性、原子性

首先,理解一下可見性:java 線程在修改主存變量的時候會先拷貝一份到本身的線程棧中去處理,每一個線程都有本身的空間,相互是獨立的,在變量修改完成到寫入主存中,這個過程對其它線程是不可見的。(這裏不明白的話能夠看一下java內存模型及線程間的通訊)緩存 那麼問題來了 不可見會如何?數據的一致性會被打亂,程序出bug,A線程改了變量c的值,B線程讀到的倒是c原來的值(其實想要的是A線程改後的值)at
相關文章
相關標籤/搜索