1. 程式人生 > >Java中sleep()和wait()的區別

Java中sleep()和wait()的區別

對於sleep()方法,我們首先要知道該方法是屬於Thread類中的。而wait()方法,則是屬於Object類中的。

sleep()方法使得程式暫停執行指定的時間,讓出cpu給其他執行緒.在呼叫sleep()方法的過程中,執行緒不會釋放物件鎖,它的監控狀態依然保持著,當指定的時間到了又會自動恢復執行狀態。

而當呼叫wait()方法的時候,執行緒會釋放物件鎖,進入等待此物件的等待鎖定池,只有針對此物件呼叫notify()方法後本執行緒才進入物件鎖定池準備獲取物件鎖進入執行狀態。