課程
/后端開發
/Java
/深入淺出Java多線程
如果energyBox[from] < amount 成立,那么當前線程會一直運行 lockObj.wait(),這樣豈不是當前線程一直在運行著,無法結束了,一直耗著CPU資源?
2016-09-02
源自:深入淺出Java多線程 4-3
正在回答
既然理解成線程會阻塞,不會執行。當其他線程NotifyAll的時候,如果他獲取資源,又會發生阻塞。那么這個線程會一直運行下去,不會消亡?(while條件一直成立)
海與千巷
在線程中調用了wait()方法后,線程就會進入阻塞,讓出cpu資源來給其他線程運行了。你可以理解為Object的wait()和Thread的sleep()方法一樣,只不過前者會先釋放那個鎖,而后者不會。
舉報
帶你一起深入淺出多線程,掌握基礎,展望進階路線
2 回答關于循環的問題
3 回答關于form取值的問題
1 回答關于extends Thread類的問題
1 回答關于休眠的幾個問題
2 回答關于同步方法的問題
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2016-09-02
既然理解成線程會阻塞,不會執行。當其他線程NotifyAll的時候,如果他獲取資源,又會發生阻塞。那么這個線程會一直運行下去,不會消亡?(while條件一直成立)
2016-09-02
在線程中調用了wait()方法后,線程就會進入阻塞,讓出cpu資源來給其他線程運行了。你可以理解為Object的wait()和Thread的sleep()方法一樣,只不過前者會先釋放那個鎖,而后者不會。