【文章內(nèi)容簡介】
鎖 P(m)與 P(S)顛倒 ? ,無影響 ,緊接著一個消費(fèi)者到來執(zhí)行 P(s)之后 ,在執(zhí)行 P(m)時阻塞 ,由于 s是互斥信號量 ,將所有后續(xù)到來的生產(chǎn)者和消費(fèi)者都因 s阻塞而產(chǎn)生死鎖 V(s)V(m)顛倒 ,V(s)V(n)顛倒 ? 9 2.讀者 –寫者問題( Courtois etal, 1971) 1) 問題 共讀獨(dú)寫 “讀-寫”互斥, “寫-寫”互斥, 讀-讀 允許 2) 解決方法 (1) 用 P、 V操作解決。 設(shè)置變量: 讀者的計(jì)數(shù)變量 readcount,初值為 0; 設(shè)置信號量: 讀者互斥訪問計(jì)數(shù)變量 readcount 的信號量 r,初值為 1; 寫者與寫者、寫者與第一個讀者互斥訪問共享數(shù)據(jù)對象的信號量 w,初值為 1。 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 t