總結 sleep和wait的區別

2021-10-06 07:29:43 字數 302 閱讀 9609

1、這兩個方法來自不同的類,sleep來自於thread,wait來自於object;

2、sleep方法沒有釋放鎖,而wait方法釋放鎖,使得其他執行緒可以使用同步控制塊和方法

3、wait只能在同步控制塊中或者同步控制方法中使用,sleep可以在任何地方使用

4、sleep必須捕獲異常,wait不需要捕獲異常

5、sleep方法不依賴於同步器synchronized,但是wait需要依賴synchronized關鍵字。

6、sleep不需要被喚醒(休眠之後推出阻塞),但是wait需要(不指定時間需要被別人中斷)。

sleep和wait的區別

關鍵字 sleep wait 1 這兩個方法來自不同的類分別是thread和object 2 最主要是sleep方法沒有釋放鎖,而wait方法釋放了鎖,使得其他執行緒可以使用同步控制塊或者方法。3 wait,notify和notifyall只能在同步控制方法或者同步控制塊裡面使用,而sleep可以在...

sleep 和 wait的區別

1 這兩個方法來自不同的類分別是,sleep來自thread類,和wait來自object類。sleep是thread的靜態類方法,誰呼叫的誰去睡覺,即使在a執行緒裡呼叫了b的sleep方法,實際上還是a去睡覺,要讓b執行緒睡覺要在b的 中呼叫sleep。2 最主要是sleep方法沒有釋放鎖,而wa...

sleep和wait的區別

1 這兩個方法來自不同的類分別是,sleep來自thread類,和wait來自object類。sleep是thread的靜態類方法,誰呼叫的誰去睡覺,即使在a執行緒裡呼叫了b的sleep方法,實際上還是a去睡覺,要讓b執行緒睡覺要在b的 中呼叫sleep。2 最主要是sleep方法沒有釋放鎖,而wa...