java併發編程(4)-----內存模型

一、什麼是內存模型 假設一個線程爲一個變量a賦值:a = 1; 內存模型需要解決這個問題:「在什麼條件下,讀取a的線程將看到這個值爲3」,在單線程情況下,不會發生任何問題,任何條件下,看到的都是3。但是在多線程情況下,如果沒有同步,就有可能使得某個線程無法立即甚至永遠看不到另一個線程對某個變量做出的更改。 這是因爲編譯器生成的指令順序可能與源碼中的順序不同,編譯器還會把一些變量保存到寄存器而不是內
相關文章
相關標籤/搜索