Volatile可见性
生活随笔
收集整理的這篇文章主要介紹了
Volatile可见性
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
Volatile
使變量在多個(gè)線程可見(jiàn)
每一個(gè)線程都會(huì)有一塊工作內(nèi)存區(qū)
其中,存放著所有線程共享的主內(nèi)存中的變量值的拷貝
當(dāng)線程執(zhí)行時(shí)
在自己的工作區(qū)內(nèi)存中,操作這些變量
共享內(nèi)存
當(dāng)主內(nèi)存中變量值改變時(shí),會(huì)寫到相應(yīng)線程的工作內(nèi)存中
為了存取一個(gè)共享變量,一個(gè)線程通常,先獲取鎖定,并去清除它的內(nèi)存工作區(qū)
把這些共享變量從所有線程的共享內(nèi)存中,正確的裝載到它自己所在工作內(nèi)存中,當(dāng)線程解鎖時(shí),保證該工作內(nèi)存區(qū)中變量的值,回寫到共享內(nèi)存中
Volatile作用
強(qiáng)制線程到主內(nèi)存,共享內(nèi)存里去讀取變量,而不去線程工作內(nèi)存區(qū)中讀取
從而,實(shí)現(xiàn)了多個(gè)線程間的變量可見(jiàn),線程的安全可見(jiàn)性
運(yùn)行
總結(jié)
以上是生活随笔為你收集整理的Volatile可见性的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Spring boot自动配置使用
- 下一篇: Synchronize同步