java線程的sleep(),wait(),notify(),yield();


1.sleep()使線程休眠一段時間,一段時間結束後,線程進入可執行狀態,但並不是立即執行,只是在被排程器調用的時候才執行。在休眠期間,並不釋放所持有的“鎖”;

2.wait()使線程休眠一段時間,若設置參數,時間到時,線程就自動進入可執行狀態。若沒有,則需要notify()方法去調用。注意:wait()方法和notify()方法都時針對this對象的,調用wait()方法後,會釋放加在對象上的“鎖”。

3.yield()使線程放棄執行的權利,進入可執行狀態,也就意味着線程在yield()方法後,有可能又執行。使用yield()方法,線程並不釋放自己鎖持有的“鎖”

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章