千鋒教育2023版Java面試寶典Java面試200題(含美團、字節(jié)、阿里大廠真

volatile關鍵字是Java虛擬機提供的的最輕量級的同步機制,它作為一個修飾符,用來修飾變量。它保證變量對所有線程可見性,禁止指令翟排,但是不保證原子性。我們先來看下java內存模型(imm) :
。Java虛擬機規(guī)范視圖定義—種Java內存模型,來屏藏掉各種硬件和提作系統(tǒng)的內存訪問差異,以實現(xiàn)讓Java程序在各種平臺上都能達到一致的內存訪問效果。volatile關鍵字是Java虛擬機提供的的最輕量級的同步機制,它作為一個修飾符,用來修飾變量。它保證變量對所有線程可見性,禁止指令翟排,但是不保證原子性。我們先來看下java內存模型(imm) :。Java虛擬機規(guī)范視圖定義—種Java內存模型,來屏藏掉各種硬件和提作系統(tǒng)的內存訪問差異,以實現(xiàn)讓Java程序在各種平臺上都能達到一致的內存訪問效果。 Java內存模型規(guī)定所有的變量都是存在主內存當中,每個線程都有自己的工作內存。這里的變量包括實例交量和靜態(tài)變量,但是不包括局部變量,因為局部交量是線程私有的。線程的工作內存保存了被該線程使用的變量的主內存副本,線程對變量的所有損作都必須在工作內存中進行,而不能直接攝作操作主內存。并且每個線程不能訪問其他線程的工作內存。
標簽: