0.关注博主有更多知识
目录
5.1死锁概念
在介绍死锁之前,先来探究一个问题:哲学家就餐问题。五个哲学家围坐在圆桌边,有5支筷子,哲学家在思考、休息、吃饭这三个动作上循环。
我们制定以下规则:
1.吃饭时使用两支筷子
2.每次只能取到一支筷子
3.只取身边的筷子(无论是左还是右)
4.吃完放下筷子
那么我们可以用文字来模拟以下每个哲学家的行为:
那么我们明显可以看到哲学家就餐问题当中的互斥和同步关系。我们可以给筷子编号,让N号哲学家可以取一支N号筷子(左手边筷子)和一支[(N+4)%5]号筷子(右手边筷子):