多線程之Condition的await和signal、signalAll等待/通知機制(十)

上篇博文,我們介紹了Condition的簡介及原理,我們這篇重點介紹Condition的await和signal等待/通知機制,以及源碼。

原理相關的內容上篇博文,我們基本已經介紹完了,我們先從一段傳統的生產消費者模型實例代碼引入,然後看Condition接口的源碼,最後一張圖總結。

傳統版生產消費者模式

生產者每生產一條消息,沒有消費者進行消費,就被阻塞,等待被喚醒。消費者每消費一條消息,如果生產者沒有繼續生產,就被阻塞,等待被喚醒。換句話說,生產一條消息,消費一條消息,交替執行。

/**
 * 共享資源類
 */
class ShareResource {

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