課程
/后端開發(fā)
/Java
/深入淺出Java多線程
既然喚醒后還要競(jìng)爭(zhēng)鎖,那么可不可以把while語(yǔ)句替換成if語(yǔ)句?
2014-12-08
源自:深入淺出Java多線程 4-4
正在回答
不可以,因?yàn)閱拘巡@得了鎖之后,是從上一次調(diào)用wait()的地方之后開始執(zhí)行,這樣if將不能阻擋不合要求的處理。
CQUMonk 提問者
初級(jí)學(xué)習(xí)號(hào)
舉報(bào)
帶你一起深入淺出多線程,掌握基礎(chǔ),展望進(jìn)階路線
2 回答為什么要用while,不可以用if嗎?
2 回答為什么同步中用while不用if
4 回答notifyAll()的通知對(duì)象包括wait set中的和等待synchronized塊的的么?
2 回答run()方法為什么用while循環(huán)而不用if
2 回答為什么用 synchronized (lockobject) { if (energyboxs[from] < amount) return;加重系統(tǒng)開銷呢?
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號(hào)-11 京公網(wǎng)安備11010802030151號(hào)
購(gòu)課補(bǔ)貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動(dòng)學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號(hào)
2014-12-09
不可以,因?yàn)閱拘巡@得了鎖之后,是從上一次調(diào)用wait()的地方之后開始執(zhí)行,這樣if將不能阻擋不合要求的處理。