假如所有的哲學家都同時拿起左側叉子,看到右側叉子不可用,又都放下左側叉子,等一會兒,又同時拿起左側叉子,如此這般,永遠重復。對于這種情況,即所有的程序都在無限期地運行,但是都無法取得任何進展,即出現饑餓,所有哲學家都吃不上飯。所以規定奇數號的哲學家先拿起他左邊的叉子,然后再去拿他右邊的叉子 而偶數號的哲學家則相反.按此規定,將是0,1號哲學家競爭0號叉子,2,3號哲學家競爭2號叉子.即五個哲學家都競爭奇數號叉子,獲得后,再去競爭偶數號叉子,最后總會有一個哲學家能獲得兩支叉子而進餐。而申請不到的哲學家進入等待,當吃完飯的哲學家放下叉子后其他哲學家便可以拿到叉子,因此不會出現餓死的哲學家。
標簽:
家
上傳時間:
2013-12-23
上傳用戶:love1314