Volatile和synchronized

多線程爲什麼會發生問題:     如下圖所示,不同線程運行在不同的cpu或cpu核心中,在cpu和主存之間,還存在一層緩存,因此cpu在讀取一個變量時,會先讀取到緩存,再進入cpu的寄存器,寫入時也是如此,會先進入緩存,再寫入主存。這樣就會導致不同線程之間的衝突了。   兩者在內存中的表現 Volatile:     被Volatile修飾的變量,會越過緩存,cpu的讀寫操作直接刷到主存(通過me
相關文章
相關標籤/搜索