java內(nèi)存模型的基礎(chǔ)
并發(fā)編程模型的兩個關(guān)鍵問題
線程之間如何通信
共享內(nèi)存:
線程之間共享程序的公共狀態(tài),通過寫-讀內(nèi)存中的公共狀態(tài)進行隱式通信。消息傳遞:
線程之間沒有公共狀態(tài),線程之間必須通過發(fā)送消息來顯示進行通信。線程之間如何同步
同步是指程序中用于控制不同線程間操作發(fā)生相對順序的機制。
- 共享內(nèi)存并發(fā)模型:
同步是顯示進行的,必須顯示指定某個方法或某段代碼需要在線程之間互斥執(zhí)行。 - 消息傳遞的并發(fā)模型:
由于消息的發(fā)送必須在消息接收之前,因此同步是隱式執(zhí)行的。