moqingsong
论坛版主
论坛版主
  • 注册日期2002-04-07
  • 最后登录2011-02-03
  • 粉丝0
  • 关注0
  • 积分74分
  • 威望71点
  • 贡献值0点
  • 好评度10点
  • 原创分0分
  • 专家分0分
阅读:2729回复:24

哲学家进餐问题

楼主#
更多 发布于:2002-12-16 12:54
7个哲学家围坐在一张圆桌周围,每个哲学家面前有一个碟通心面,由于面条很滑,所以要用两把叉子才能夹住。相邻两个碟子之间有一把叉子。哲学家的生活包括三种状态:即吃饭,思考和挨饿,当一个哲学家觉得饿时,他试图分两次去取他左边和右边的叉子,每次拿一把,但不分次序。如果成功地获得了两把叉子,他就开始吃饭,吃完以后放下叉子继续思考。这里的问题是:为每一个哲学家写一段程序来描述起行为,要求不能死锁。

   :D :D
按第一贴的“给分”键,给分。
沙漠之鹰
驱动大牛
驱动大牛
  • 注册日期2001-12-30
  • 最后登录2007-08-02
  • 粉丝0
  • 关注0
  • 积分16分
  • 威望2点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2003-01-08 14:22
正在看操作系统书,刚好讲到这里,学习ing
------------------------------ [color=red]茶壶深爱着茶叶,表达爱意时却遭到拒绝,茶壶大吼:为什么?这一切都是为什么? 茶叶胆怯地说:俺妈说了,成天灌水的都不是好人。 ---别到处看,说你哪!!    [/color]
moqingsong
论坛版主
论坛版主
  • 注册日期2002-04-07
  • 最后登录2011-02-03
  • 粉丝0
  • 关注0
  • 积分74分
  • 威望71点
  • 贡献值0点
  • 好评度10点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2002-12-16 22:37
没什么好说的啦

1965年由Dijkstra提出并解决
按第一贴的“给分”键,给分。
lrx666
驱动太牛
驱动太牛
  • 注册日期2001-08-17
  • 最后登录2010-10-25
  • 粉丝0
  • 关注0
  • 积分14分
  • 威望47点
  • 贡献值0点
  • 好评度4点
  • 原创分0分
  • 专家分0分
地板#
发布于:2002-12-16 19:34
俺也想知道!

想知道什么?
jinghuiren
驱动巨牛
驱动巨牛
  • 注册日期2002-06-01
  • 最后登录2008-10-27
  • 粉丝0
  • 关注0
  • 积分291分
  • 威望460点
  • 贡献值0点
  • 好评度428点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2002-12-16 19:22
俺也想知道!
cwj53061871
驱动老牛
驱动老牛
  • 注册日期2002-03-08
  • 最后登录2013-01-10
  • 粉丝2
  • 关注0
  • 积分38分
  • 威望463点
  • 贡献值0点
  • 好评度162点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2002-12-16 18:00
没什么好说的啦
毛主席说:自力更生,坚苦朴素
moqingsong
论坛版主
论坛版主
  • 注册日期2002-04-07
  • 最后登录2011-02-03
  • 粉丝0
  • 关注0
  • 积分74分
  • 威望71点
  • 贡献值0点
  • 好评度10点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2002-12-16 17:28
侯捷的一本书上写了这个算法的,其实有先决条件的,否则一定存在死锁的情况!

介绍给我学习一下。。 :o
按第一贴的“给分”键,给分。
lrx666
驱动太牛
驱动太牛
  • 注册日期2001-08-17
  • 最后登录2010-10-25
  • 粉丝0
  • 关注0
  • 积分14分
  • 威望47点
  • 贡献值0点
  • 好评度4点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2002-12-16 17:22
有难度的问题都会有分的。

放之前说不知道这贴会被灌成什么样子了。。 ;)

对,要学会动脑筋
moqingsong
论坛版主
论坛版主
  • 注册日期2002-04-07
  • 最后登录2011-02-03
  • 粉丝0
  • 关注0
  • 积分74分
  • 威望71点
  • 贡献值0点
  • 好评度10点
  • 原创分0分
  • 专家分0分
8楼#
发布于:2002-12-16 17:20
有难度的问题都会有分的。

放之前说不知道这贴会被灌成什么样子了。。 ;)
按第一贴的“给分”键,给分。
fracker
驱动太牛
驱动太牛
  • 注册日期2001-06-28
  • 最后登录2021-03-30
  • 粉丝0
  • 关注0
  • 积分219分
  • 威望81点
  • 贡献值0点
  • 好评度23点
  • 原创分0分
  • 专家分1分
  • 社区居民
9楼#
发布于:2002-12-16 17:08
侯捷的一本书上写了这个算法的,其实有先决条件的,否则一定存在死锁的情况!
fracker
驱动太牛
驱动太牛
  • 注册日期2001-06-28
  • 最后登录2021-03-30
  • 粉丝0
  • 关注0
  • 积分219分
  • 威望81点
  • 贡献值0点
  • 好评度23点
  • 原创分0分
  • 专家分1分
  • 社区居民
10楼#
发布于:2002-12-16 17:06
你都放完了,让我们看什么看?
moqingsong
论坛版主
论坛版主
  • 注册日期2002-04-07
  • 最后登录2011-02-03
  • 粉丝0
  • 关注0
  • 积分74分
  • 威望71点
  • 贡献值0点
  • 好评度10点
  • 原创分0分
  • 专家分0分
11楼#
发布于:2002-12-16 16:41
[quote][quote]有分。。。 :)

 :( :( :( [/quote]
哪有? [/quote]
往第2贴上看。。。。
按第一贴的“给分”键,给分。
lrx666
驱动太牛
驱动太牛
  • 注册日期2001-08-17
  • 最后登录2010-10-25
  • 粉丝0
  • 关注0
  • 积分14分
  • 威望47点
  • 贡献值0点
  • 好评度4点
  • 原创分0分
  • 专家分0分
12楼#
发布于:2002-12-16 16:23
[quote]有分。。。 :)

 :( :( :( [/quote]
哪有?
abc0099
论坛版主
论坛版主
  • 注册日期2002-09-28
  • 最后登录2007-10-31
  • 粉丝0
  • 关注0
  • 积分50分
  • 威望5点
  • 贡献值0点
  • 好评度5点
  • 原创分0分
  • 专家分0分
13楼#
发布于:2002-12-16 15:26
有分。。。 :)

 :( :( :(
[color=pink]彩虹是天空雨后的微笑[/color]
moqingsong
论坛版主
论坛版主
  • 注册日期2002-04-07
  • 最后登录2011-02-03
  • 粉丝0
  • 关注0
  • 积分74分
  • 威望71点
  • 贡献值0点
  • 好评度10点
  • 原创分0分
  • 专家分0分
14楼#
发布于:2002-12-16 15:05
有分。。。 :)
按第一贴的“给分”键,给分。
Jkw_Dev
驱动中牛
驱动中牛
  • 注册日期2002-11-03
  • 最后登录2014-11-28
  • 粉丝0
  • 关注0
  • 积分82分
  • 威望28点
  • 贡献值0点
  • 好评度8点
  • 原创分0分
  • 专家分0分
15楼#
发布于:2002-12-16 14:47
我们设定7个哲学家,且不允许哲学家饿死。为每个哲学家创建一个线程,把叉子看作条件变量,让线程等待条件变量,如果满足条件,则线程执行(哲学家的吃饭状态),执行一定时间之后,释放条件变量,进入休眠状态(哲学家的思考状态),当休眠时间过去之后,线程被唤醒,重新等待条件变量(哲学家的挨饿状态)。



   :) :D

这样啊!
浮萍
驱动太牛
驱动太牛
  • 注册日期2002-11-08
  • 最后登录2008-05-31
  • 粉丝0
  • 关注0
  • 积分150分
  • 威望16点
  • 贡献值0点
  • 好评度11点
  • 原创分0分
  • 专家分0分
16楼#
发布于:2002-12-16 14:41
我们设定7个哲学家,且不允许哲学家饿死。为每个哲学家创建一个线程,把叉子看作条件变量,让线程等待条件变量,如果满足条件,则线程执行(哲学家的吃饭状态),执行一定时间之后,释放条件变量,进入休眠状态(哲学家的思考状态),当休眠时间过去之后,线程被唤醒,重新等待条件变量(哲学家的挨饿状态)。



   :) :D
:D :D :) :D :)
moqingsong
论坛版主
论坛版主
  • 注册日期2002-04-07
  • 最后登录2011-02-03
  • 粉丝0
  • 关注0
  • 积分74分
  • 威望71点
  • 贡献值0点
  • 好评度10点
  • 原创分0分
  • 专家分0分
17楼#
发布于:2002-12-16 14:35
我们设定7个哲学家,且不允许哲学家饿死。为每个哲学家创建一个线程,把叉子看作条件变量,让线程等待条件变量,如果满足条件,则线程执行(哲学家的吃饭状态),执行一定时间之后,释放条件变量,进入休眠状态(哲学家的思考状态),当休眠时间过去之后,线程被唤醒,重新等待条件变量(哲学家的挨饿状态)。



   :) :D
按第一贴的“给分”键,给分。
abc0099
论坛版主
论坛版主
  • 注册日期2002-09-28
  • 最后登录2007-10-31
  • 粉丝0
  • 关注0
  • 积分50分
  • 威望5点
  • 贡献值0点
  • 好评度5点
  • 原创分0分
  • 专家分0分
18楼#
发布于:2002-12-16 14:07
我也没见过 :(
[color=pink]彩虹是天空雨后的微笑[/color]
Jkw_Dev
驱动中牛
驱动中牛
  • 注册日期2002-11-03
  • 最后登录2014-11-28
  • 粉丝0
  • 关注0
  • 积分82分
  • 威望28点
  • 贡献值0点
  • 好评度8点
  • 原创分0分
  • 专家分0分
19楼#
发布于:2002-12-16 14:05
这不是操作系统书上的 原子操作的例子吗?

 

没见过呀!
上一页
游客

返回顶部