java中volatile關鍵字保證可見性有序性

我們知道java併發編程主要會有可見性,原子性,有序性幾個問題。 volatile可以保證可見性和有序性,但是無法保證原子性。 有序性:編譯器會根據自認爲的排序對代碼進行指令重排,指令重排不會對單線程造成影響,但是可能會導致多線程時候運行錯誤。 可見性:可行性是指對線程的操作對其他線程可見。 volatile關鍵字可以禁止指令重排,所以可以保證了有序性。有序性也通常是指的happen-before
相關文章
相關標籤/搜索