wait方法是在什麼時候結束

2021-08-29 10:37:20 字數 680 閱讀 9661

[size=10]wait方法是在什麼時候結束

[color=blue]

1、當notify方法執行時[/color]

對obj呼叫notify方法,執行緒被喚醒時.

[color=blue]2、當notifyall方法執行時[/color]

notifyall 會把例項的等待區里所有的執行緒全部喚醒。無論是notify還是notifyall,執行緒被喚醒後,還是要重新獲取obj的鎖定。

[color=blue]

3、當interrupt方法執行時[/color]

被interrupt時,等待區里的執行緒會重新獲取obj的鎖定,並丟擲interruptedexception異常。

notify、notifyall兩個方法是對例項呼叫的,而interrupt則是對執行緒呼叫的。

[color=blue]4、發生timeout的時候[/color]

當wait方法引數中的設定的timeout時間已經到了的時候.如:

obj.wait(1000); //指定timeout的時間約為1000毫秒.

執行這個語句,執行緒就會進入obj的等待區里暫停,並釋放obj的鎖定,只有超過指定的時間的時候,才會成等候區退出。

但必須注意一點:

[color=red]synchronized 沒有timeout,也不能中斷[/color][/size]

夏天什麼時候結束呢?

上海的夏天真是熱,難以想象如果沒有空調該怎麼辦?也難以想象以前在學校住宿舍都是怎麼過來的。不得不感慨 由簡入奢易,由奢入簡難 哦。上週很辛苦,終於到週末了,好開心哦,周五晚上從公司出來,開著我的兩輪車 想找個地方放鬆一下,首先就是要逃離這個人山人海的徐家匯。kk說想吃貴一點好一點少一點的東東,這樣才...

在c 中, 什麼時候用 什麼時候用

在某種意義上,和 是意思相對的兩個東西,把它們放在一起有什麼意義呢?為了理解指標的這種做法,我們先複習一下c c 程式設計中無所不在的指標概念。我們都知道myclass 的意思 指向某個物件的指標,此物件的型別為myclass。void func1 myclass pmyclass 例如 mycla...

layoutSubviews在什麼時候被呼叫

layoutsubviews在以下情況下會被呼叫 1 init初始化不會觸發layoutsubviews 2 addsubview會觸發layoutsubviews 3 設定view的frame會觸發layoutsubviews,當然前提是frame的值設定前後發生了變化 4 滾動乙個uiscrol...