理解sleep、wait蠢琳、notify

sleep

  • api文檔
image.png
image.png
在指定的毫秒數(shù)內(nèi)**讓當(dāng)前正在執(zhí)行的線(xiàn)程休眠**(暫停執(zhí)行)啊终,此操作受到系統(tǒng)計(jì)時(shí)器和調(diào)度程序精度和準(zhǔn)確性的影響。該線(xiàn)程不丟失任何監(jiān)視器的所屬權(quán)傲须。
  • 理解

    1. Thread類(lèi)的靜態(tài)方法蓝牲。休眠時(shí),僅僅釋放CPU資源泰讽,不會(huì)釋放同步鎖搞旭,可被中斷。
    2. InterruptedException:當(dāng)前線(xiàn)程被中斷是拋出此異常菇绵,需捕獲處理。

yield

  • Thread類(lèi)的靜態(tài)方法镇眷。
  • Yield是一個(gè)靜態(tài)的原生(native)方法咬最。
  • Yield告訴當(dāng)前正在執(zhí)行的線(xiàn)程把運(yùn)行機(jī)會(huì)交給線(xiàn)程池中優(yōu)先級(jí)高的線(xiàn)程。
  • 它僅能使一個(gè)線(xiàn)程從運(yùn)行狀態(tài)轉(zhuǎn)到可運(yùn)行狀態(tài)欠动,而不是等待或阻塞狀態(tài)永乌。
  • 誰(shuí)能獲得CPU完全取決于調(diào)度器惑申,在有些情況下調(diào)用yield方法的線(xiàn)程甚至?xí)俅蔚玫紺PU資源。所以翅雏,依賴(lài)于yield方法是不可靠的圈驼,它只能盡力而為參考

join

線(xiàn)程實(shí)例的方法join()方法可以使得一個(gè)線(xiàn)程在另一個(gè)線(xiàn)程結(jié)束后再執(zhí)行望几。如果join()方法在一個(gè)線(xiàn)程實(shí)例上調(diào)用绩脆,當(dāng)前運(yùn)行著的線(xiàn)程將阻塞直到這個(gè)線(xiàn)程實(shí)例完成了執(zhí)行

wait 橄抹、notify 靴迫、 notifyAll

  • 這三個(gè)方法是Object的final方法÷ナ模可以用 wait玉锌、notify 和 notifyAll 來(lái)實(shí)現(xiàn)線(xiàn)程間的通信。

  • 調(diào)用對(duì)象的wait方法疟羹,該線(xiàn)程就會(huì)處于該對(duì)象的等待池中主守,并釋放鎖。

  • 當(dāng)其它線(xiàn)程調(diào)用該對(duì)象的notifyAll()方法(喚醒所有wait線(xiàn)程)或notify()方法(只隨機(jī)喚醒一個(gè)wait線(xiàn)程)榄融,被喚醒的的線(xiàn)程便會(huì)進(jìn)入該對(duì)象的鎖池中参淫,鎖池中的線(xiàn)程會(huì)去競(jìng)爭(zhēng)該對(duì)象鎖。

  • 只能在同步函數(shù)或代碼塊中使用wait剃袍、notify和notifyAll黄刚,不然Java虛擬機(jī)會(huì)生成 IllegalMonitorStateException。

  • 永遠(yuǎn)在while循環(huán)里而不是if語(yǔ)句下使用wait民效。這樣憔维,循環(huán)會(huì)在線(xiàn)程睡眠前后都檢查wait的條件,并在條件實(shí)際上并未改變的情況下處理喚醒通知畏邢。

  • 永遠(yuǎn)在多線(xiàn)程間共享的對(duì)象(在生產(chǎn)者消費(fèi)者模型里即緩沖區(qū)隊(duì)列)上使用wait业扒。

參考文章

sleep vs wait

  • wait()是用于線(xiàn)程間通信的,而sleep()是用于短時(shí)間暫停當(dāng)前線(xiàn)程舒萎。
  • 進(jìn)入wait狀態(tài)的線(xiàn)程能夠被notify和notifyAll線(xiàn)程喚醒程储,并且會(huì)釋放實(shí)例對(duì)象所持有的鎖。sleep不會(huì)被喚醒臂寝,也不會(huì)釋放鎖章鲤。
  • Java中的wait方法應(yīng)在同步代碼塊中調(diào)用,sleep則沒(méi)要求咆贬。

寫(xiě)在最后败徊,以上內(nèi)容源于網(wǎng)絡(luò)及個(gè)人總結(jié),若有錯(cuò)誤之處掏缎,請(qǐng)?jiān)u論區(qū)留言討論皱蹦,共勉之煤杀。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市沪哺,隨后出現(xiàn)的幾起案子沈自,更是在濱河造成了極大的恐慌,老刑警劉巖辜妓,帶你破解...
    沈念sama閱讀 216,591評(píng)論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件枯途,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡嫌拣,警方通過(guò)查閱死者的電腦和手機(jī)柔袁,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,448評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)异逐,“玉大人捶索,你說(shuō)我怎么就攤上這事』艺埃” “怎么了腥例?”我有些...
    開(kāi)封第一講書(shū)人閱讀 162,823評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)酝润。 經(jīng)常有香客問(wèn)我燎竖,道長(zhǎng),這世上最難降的妖魔是什么要销? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,204評(píng)論 1 292
  • 正文 為了忘掉前任构回,我火速辦了婚禮,結(jié)果婚禮上疏咐,老公的妹妹穿的比我還像新娘纤掸。我一直安慰自己,他們只是感情好浑塞,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,228評(píng)論 6 388
  • 文/花漫 我一把揭開(kāi)白布借跪。 她就那樣靜靜地躺著,像睡著了一般酌壕。 火紅的嫁衣襯著肌膚如雪掏愁。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 51,190評(píng)論 1 299
  • 那天卵牍,我揣著相機(jī)與錄音果港,去河邊找鬼。 笑死糊昙,一個(gè)胖子當(dāng)著我的面吹牛京腥,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播溅蛉,決...
    沈念sama閱讀 40,078評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼公浪,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了船侧?” 一聲冷哼從身側(cè)響起欠气,我...
    開(kāi)封第一講書(shū)人閱讀 38,923評(píng)論 0 274
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎镜撩,沒(méi)想到半個(gè)月后预柒,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,334評(píng)論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡袁梗,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,550評(píng)論 2 333
  • 正文 我和宋清朗相戀三年宜鸯,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片遮怜。...
    茶點(diǎn)故事閱讀 39,727評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡淋袖,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出锯梁,到底是詐尸還是另有隱情即碗,我是刑警寧澤,帶...
    沈念sama閱讀 35,428評(píng)論 5 343
  • 正文 年R本政府宣布陌凳,位于F島的核電站剥懒,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏合敦。R本人自食惡果不足惜初橘,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,022評(píng)論 3 326
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望充岛。 院中可真熱鬧保檐,春花似錦、人聲如沸裸准。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,672評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)炒俱。三九已至盐肃,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間权悟,已是汗流浹背砸王。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,826評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留峦阁,地道東北人谦铃。 一個(gè)月前我還...
    沈念sama閱讀 47,734評(píng)論 2 368
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像榔昔,于是被迫代替她去往敵國(guó)和親驹闰。 傳聞我的和親對(duì)象是個(gè)殘疾皇子瘪菌,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,619評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容