sleep()方法(休眠)是線程類(Thread)的靜態方法,調用此方法會讓當前線程暫停執行指定的時間,將執行機會(CPU)讓給其他線程,但是對象的鎖依然保持,因此休眠時間結束後會自動恢復(線程回到就緒狀態)。wait()是Object類的方法,調用對象的wait()方法導致當前線程放棄對象的鎖(線程暫停執行),進入對象的等待池(wait pool),只有調用對象的notify()方法(或notifyAll()方法)時才能喚醒等待池中的線程進入等鎖池(lock pool),如果線程重新獲得對象的鎖就可以進入就緒狀態。
Thread類的sleep()方法和對象的wait()方法都可以讓線程暫停執行,它們有什麼區別?
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章
Java基礎中的面試題(一),你能接幾招(附答案(不帶答案的面試題都是耍流氓))
一缕82年的清风
2020-07-07 15:09:56
Java面試題集(第五部分)(116-135)
JAVA_DIRECTION
2020-07-07 12:46:33
Java面試題集(第四部分)(86-115)
JAVA_DIRECTION
2020-07-07 12:46:32
Java面試題集(第七部分)(151-180)
JAVA_DIRECTION
2020-07-07 12:46:32
Java面試題十:Java的自動裝箱與拆箱(Autoboxing and unboxing)
songzi1228
2020-07-07 09:27:44
2020 最新Spring Cloud面試題
一枚小小菜鸟
2020-07-07 06:13:35
2020最新Java集合面試題
一枚小小菜鸟
2020-07-07 06:13:35
什麼是迭代器(Iterator)
子衿_青青
2020-07-07 04:54:33
同步方法和同步代碼塊的區別
子衿_青青
2020-07-07 04:54:33
如何確保N個線程可以訪問N個資源同時又不導致死鎖
子衿_青青
2020-07-07 04:54:33
java基礎篇--HashMap 底層實現原理是什麼?JDK8 做了哪些優化?
爱分享的淘金达人
2020-07-06 23:59:57
java面試題(容器)
木木夕&从心开始
2020-07-06 16:44:21
java常見面試題一
木木夕&从心开始
2020-07-06 16:44:21
有意思的try catch finally
木木夕&从心开始
2020-07-06 16:04:12