第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

JAVA中volatile關鍵字

JAVA中volatile關鍵字

慕哥9229398 2019-03-20 18:15:07
volatile關鍵字保證了共享變量的可見性,再加上緩存一致性協(xié)議這兩條為何還不能保證原子行?
查看完整描述

1 回答

?
江戶川亂折騰

TA貢獻1851條經驗 獲得超5個贊

請把你的變量當成只有一個格子,變量的值是格子中存放的物件,這個格子能復制當前格子中的物件,返回給獲取這個格子中的物件的訪問者,當訪問者獲取格子的時候,格子會復制物件給訪問者,當訪問者對復制的物件作出改動或者修正后,會將物件重新放回格子,這時候格子會用被放回的物件替代已經有的物件,但是訪問者對于復制的物件做改動是需要時間的,在這段時間內格子中的內容可能會被別的訪問者修改,而當前訪問者修改完物件后再放入格子會將格子中的物件替代掉,這時候就產生了race condition,那么什么叫做共享變量的可見性?其實準確的說就是變量被線程修改的值永遠都會被及時放入內存中而不是cpu的緩存里,當放入內存中我們叫做變量的變化是可見的,緩存一致性這句話難道樓主沒有疑惑嗎?緩存和誰一致呢?答案是緩存和cpu緩存中的變量值是一致的,那cpu緩存中的值是誰放入和操作的呢?當前正在活動的線程。


查看完整回答
反對 回復 2019-04-22
  • 1 回答
  • 0 關注
  • 286 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號