Java 併發?內存模型綜述!

1.鎖: 鎖除了讓臨界區互斥外,還可以讓釋放鎖的線程向獲取同一個鎖的線程發送消息。 當線程釋放鎖時,JMM會把該線程對應的本地內存中的共享變量刷新到主內存中。 當線程獲取鎖時,JMM會把該線程對應的內存置爲無效。從而使得被監視器保護的臨界區代碼必須從內存中讀取共享變量。 鎖釋放與volatile寫有相同的內存語義,鎖獲取與volatile讀有相同的內存語義。 下面對鎖釋放和鎖獲取的內存語義做個總結
相關文章
相關標籤/搜索