課程
/后端開發(fā)
/Java
/深入淺出Java多線程
如果就用return的話是不是執(zhí)行到return的時(shí)候這個(gè)方法就結(jié)束了,繼續(xù)下一行代碼了,怎么會(huì)競爭鎖資源呢??想不通,請解答一下
2017-06-26
源自:深入淺出Java多線程 4-4
正在回答
假設(shè)原本有n個(gè)線程,return了之后,當(dāng)前線程又回到可運(yùn)行狀態(tài)繼續(xù)爭搶cpu資源,爭奪的數(shù)目為n;
如果用wait方法,會(huì)把線程放入lock對象的wait?set中,不去爭搶cpu,爭奪資源的線程數(shù)為n-1,這樣也就節(jié)省了一部分系統(tǒng)因?yàn)榫€程爭奪鎖的開銷
仔細(xì)看下圖將能找到答案!
舉報(bào)
帶你一起深入淺出多線程,掌握基礎(chǔ),展望進(jìn)階路線
2 回答在wait set中不滿足條件的線程,被喚醒后是不是還是不滿足條件?
2 回答爭用條件問題
1 回答到底什么是爭用條件?為什么能量會(huì)不守恒
2 回答關(guān)于滿足條件的線程等待問題
1 回答如果共享資源一直不滿足線程的要求,線程不就會(huì)一直傻傻的等待
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號(hào)-11 京公網(wǎng)安備11010802030151號(hào)
購課補(bǔ)貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動(dòng)學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號(hào)
2017-10-22
假設(shè)原本有n個(gè)線程,return了之后,當(dāng)前線程又回到可運(yùn)行狀態(tài)繼續(xù)爭搶cpu資源,爭奪的數(shù)目為n;
如果用wait方法,會(huì)把線程放入lock對象的wait?set中,不去爭搶cpu,爭奪資源的線程數(shù)為n-1,這樣也就節(jié)省了一部分系統(tǒng)因?yàn)榫€程爭奪鎖的開銷
2017-06-27
仔細(xì)看下圖將能找到答案!