下載本文檔
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第Java并發(fā)編程之Java內(nèi)存模型lock(鎖定):將主內(nèi)存中的變量鎖定,為一個(gè)線程所獨(dú)占
unlock(解鎖):將lock加的鎖解除,其他的線程有機(jī)會(huì)訪問(wèn)此變量
read(讀?。鹤饔糜谥鲀?nèi)存變量,將主內(nèi)存中的變量值讀取到工作內(nèi)存
load(加載):作用于工作內(nèi)存,將read讀取到的值保存到工作內(nèi)存中的變量副本
use(使用):作用于工作內(nèi)存變量,將值傳遞給線程的代碼執(zhí)行引擎
assign(賦值):作用于工作內(nèi)存變量,將執(zhí)行引擎處理返回的值重新賦值給變量副本
store(存儲(chǔ)):作用于工作內(nèi)存變量,將變量副本的值傳送到主內(nèi)存中
write(寫(xiě)入):作用于主內(nèi)存變量,將store傳送過(guò)來(lái)的值寫(xiě)入到主內(nèi)存的共享變量中
Java內(nèi)存模型的同步交互協(xié)議,執(zhí)行上述8種原子操作時(shí)必須滿足如下規(guī)則
不允許read和load,store和write操作之一單獨(dú)出現(xiàn)。即不允許加載或同步工作到一半。
不允許一個(gè)線程丟棄它最近的assign操作,即變量在工作內(nèi)存中改變之后,必須將數(shù)據(jù)同步回主內(nèi)存
不允許一個(gè)線程無(wú)原因地(無(wú)assign操作)將數(shù)據(jù)從工作內(nèi)存同步到主內(nèi)存中。
一個(gè)新的變量可能在主內(nèi)存中誕生。
一個(gè)變量在同一個(gè)時(shí)刻只允許一條線程對(duì)其進(jìn)行l(wèi)ock操作,但lock操作可以被同一條線程重復(fù)執(zhí)行多次,多次lock之后必須要執(zhí)行相同次數(shù)unlock操作,變量才會(huì)解鎖
如果對(duì)一個(gè)對(duì)象進(jìn)行l(wèi)ock操作,那么會(huì)清空工作內(nèi)存變量中的值,在執(zhí)行引擎使用這個(gè)變量前,需要重新執(zhí)行l(wèi)oad或assign操作初始變量的值
如果一個(gè)對(duì)象事先沒(méi)有被lock,就不允許對(duì)其進(jìn)行unlock操作,也不允許去unlock一個(gè)被其他線程鎖住的變量。
對(duì)一個(gè)變量執(zhí)行unlock操作之前,必須將此變量同步回主內(nèi)存中(執(zhí)行store、write)
5、Java內(nèi)存模型同步協(xié)議
Java內(nèi)存模型的同步協(xié)議,操作規(guī)范將一個(gè)變量從主內(nèi)存復(fù)制到工作內(nèi)存要順序執(zhí)行read、load操作;要將變量從工作內(nèi)存同步回主內(nèi)存要用store、write操作。只要求順序執(zhí)行,不一定是連續(xù)執(zhí)行
圖引用網(wǎng)上資料:
6、Java內(nèi)存模型的HB法則
并發(fā)編程有三個(gè)重要特效:原子行、可見(jiàn)性、有序性
原子性:原子性是指一個(gè)或者多個(gè)操作,要么全部執(zhí)行且執(zhí)行過(guò)程不會(huì)被其它操作打斷,要么全部不執(zhí)行。
可見(jiàn)性:可見(jiàn)性是指共享變量對(duì)于多個(gè)線程都是可見(jiàn)的,也即一個(gè)線程修改了變量,其它線程馬上就能知道
有序性:有序性是指程序的執(zhí)行順序按照代碼的先后順便執(zhí)行
在說(shuō)JMM的happens
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 水果種植合作社財(cái)務(wù)制度
- 分支機(jī)構(gòu)財(cái)務(wù)制度
- 美國(guó)私立學(xué)校財(cái)務(wù)制度
- 公司喝酒制度
- 瀝青支路施工方案(3篇)
- 活動(dòng)型新聞策劃方案(3篇)
- 施工現(xiàn)場(chǎng)施工防污染制度
- 教職工休息休假制度
- 罕見(jiàn)腫瘤的個(gè)體化治療長(zhǎng)期生存數(shù)據(jù)分析與策略優(yōu)化-1-1
- 遼寧省重點(diǎn)協(xié)作校2026屆高三生物第一學(xué)期期末調(diào)研試題含解析
- 2025學(xué)年度人教PEP五年級(jí)英語(yǔ)上冊(cè)期末模擬考試試卷(含答案含聽(tīng)力原文)
- 醫(yī)院醫(yī)院醫(yī)院后勤管理
- 2025年岐黃天使中醫(yī)課后試題及答案
- 肺癌術(shù)后呼吸功能鍛煉指導(dǎo)
- 保障供貨協(xié)議書(shū)
- 2025年中國(guó)糖尿病腎臟病基層管理指南(全文)
- 顱內(nèi)腫瘤切除術(shù)手術(shù)配合
- CRRT患者體位管理與并發(fā)癥預(yù)防方案
- 財(cái)政評(píng)審應(yīng)急預(yù)案
- 超市食品安全培訓(xùn)記錄課件
- 胰島細(xì)胞瘤課件
評(píng)論
0/150
提交評(píng)論