看板 Grad-ProbAsk 關於我們 聯絡資訊
※ 引述《work76 (work)》之銘言: : do { : flag[i] = true; : while (flag[j]); : cs : flag[i]=false; : rs : } (1); : 知道這個程式結果會 : 一、滿足互斥(為什麼,可以幫忙解釋一下嗎?) 要嘛兩個都進不去(兩個都想進去) 要嘛其中一個為true的進去(一個想進去一個不想進去) 要嘛兩個都不想進去 所以不會兩個都同時在CS內 所以滿足互斥 : 二、process不滿足 : 因為Pi和Pj都為真,都無法進入導致deadlock. : 三、bounded waiting滿足(為什麼,可以幫忙解釋一下嗎?) 如果i在CS內,而j在while等 則i離開CS後會將flag[i]設為false(此時j就可進入) 所以如果i離開CS後又再企圖進入CS 必定無法在j之前進入 所以j至多等一次之後就可進入 所以滿足bounded waiting 應該是醬吧@@? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 58.114.87.174