多線程等待喚醒機制簡單入門
聽完畢老師講解的等待喚醒機制的原理。自己進行了簡單的整理。
線程之間的關係是平等的,彼此之間並不存在任何依賴,它們各自競爭CPU資源,互不相讓,並且還無條件地阻止其他線程對共享資源的異步訪問。等待喚醒機制如圖講解
等待喚醒機制在開發中是經常用到的。兩個線程去共享一個資源,一個線程執行完之後進入等待狀態,喚醒另一個等待的線程。詳細闡述:如圖input 是往資源裏放數據,output 是取數據。那數據倉庫裏面有兩個屬性name,sex一個標識 flag. Input放數據的時候要通過標示判斷數據倉庫裏面是否有數據,有數據就進行等待(wait),沒有數據執行放入數據動作並且喚醒(notify)等待取數據線程。取數據的操作與放數據動作是一樣的。這就是簡單的等待喚醒機制。下面有代碼片段,請參考: