永发信息网

利用AND型信号量解决哲学家进餐问题,要windows下的C/C++的完整源代码程序.(五个哲学家五只筷子)

答案:1  悬赏:50  手机版
解决时间 2021-07-28 20:16
利用AND型信号量解决哲学家进餐问题,要windows下的C/C++的完整源代码程序.(五个哲学家五只筷子)
最佳答案

// 哲学家进餐问题
#define WIN32_LEAN_AND_MEAN

#include
#include
#include

DWORDWINAPIPhilosoperThreadFunc(LPVOID);

#define PHILOSOPERS 5

HANDLE chop_sticks[PHILOSOPERS];
HANDLE threads[PHILOSOPERS];

intmain(int argc,char** argv)
{
for(inti=0;i
再问:   怎么我在VS2010下运行后不能停下来呢?。能帮忙改改成能停下的吗?只要5个哲学家都吃完了就行了,就停止下来吧,只要求输出他们谁想吃/正在吃/还有最后吃完了就行了。我这些确实不怎么懂帮一下忙吧,谢谢!
再答: DWORD WINAPI PhilosoperThreadFunc(LPVOID n) { int i=(int)n; HANDLE my_chop_sticks[2]; my_chop_sticks[0]=chop_sticks[i]; my_chop_sticks[1]=chop_sticks[(i-1>0)?i-1:PHILOSOPERS]; srand(GetTickCount()); //while(1){ Sleep((rand()%8)*500+500); printf(Philosopher #%d want to eat\n,i); WaitForMultipleObjects(2,my_chop_sticks,TRUE,0); printf(Philosopher #%d is eating\n,i); ReleaseMutex(my_chop_sticks[0]); ReleaseMutex(my_chop_sticks[1]); printf(Philosopher #%d finished his dinner\n,i); //} } 把while(1)这个循环拿掉
再问: 谢啦哈....


我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
诛仙小说里面,你们最喜欢哪个人物? 为什么!
mysql 小问题
杰伦什么地方最吸引你?…
空间怎么没有添加和应用
如果我一直想它,该咋办
曾都区随州格林豪威大酒店地址在哪,我要去那
如何祝福别人喜得贵子,一个同事喜得千金!我
沈阳那里可以投诉企业!企业要无缘无故要克扣
介绍一些好听的歌 在QQ音乐上可以直接搜到滴
芬兰的气候现在怎么样?
香格里拉的起源是什么
张翰的Q是多少啊?
手长冻疮擦什么药好?
新洲区武汉天津包子(新洲大街店)在什么地方啊
福州制作flash动画的公司是哪家?联系方式有
推荐资讯
梦幻西游DT或LG怎样练
男生都喜欢偏瘦的女生吗?
谁能给我提供些电厂热控系统的图片(要清晰点
国导证具体要考什么,英语重要吗?
保险加保是什么,保兑是什么意思
宝丰县平顶山创意广告地址在哪,我要去那里
寻描写人物的词语或者句子?
怎样可以提高人气
3250是S60_4版,还是3版的,我知道停产了
关于爱情诗歌徐志摩,近代写悲伤情感的诗词都
电脑不能播放部分网络视频,怎么回事?怎么解
我上网网页为什么跳出来很慢
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?