【正文】
其他管程訪問。 Wait (Ci) 、 Signal (Ci) 6 經(jīng)典同步問題 1.生產(chǎn)者 –消費者問題(即有界緩沖區(qū)問題) 1) 問題 所有的生產(chǎn)者與消費者必須互斥地訪問緩沖區(qū) 生產(chǎn)與消費同步 2) 解決方法 (1) 用 P、 V操作解決。 10 讀 者P ( r )r ea d co u n t = 0?P ( w )r ea d co u n t + 1 →r ea d co u n tNV ( r )讀操作( 共享數(shù)據(jù))P ( r )r ea d co u n t - 1 →r ea d co u n tr ea d co u n t = 0?V ( w )NYV ( r )返 回寫 者P ( w )寫操作( 共享數(shù)據(jù))V ( w )返 回Y讀者之間只互斥 readcount,由 r實現(xiàn) 第一個和最后一個讀者與寫者互斥 讀者與寫者、寫者與寫者用 w互斥 11 (2) 用信號量集機制解決。假定哲學(xué)家有兩種活動:吃飯與思考。 (1) 至多只允許有四位哲學(xué)家同時去拿左邊的筷子,最終能保證至少有一位哲學(xué)家能夠進餐,并在用畢時能釋放出他用過的兩只筷子,從而使更多的哲學(xué)家能夠進餐。