用wait、signal操作实现爸爸、儿子、女儿3个并发进程的同步
来源:学生作业帮 编辑:百度作业网作业帮 分类:综合作业 时间:2024/06/02 04:11:06
用wait、signal操作实现爸爸、儿子、女儿3个并发进程的同步
桌上有一个空盘子,只允许放一个水果.爸爸可以向盘中放苹果,也可以向盘中放桔子,儿子专等吃盘中的桔子,女儿专等吃盘中的苹果.规定当盘空时,一次只能放一只水果.
桌上有一个空盘子,只允许放一个水果.爸爸可以向盘中放苹果,也可以向盘中放桔子,儿子专等吃盘中的桔子,女儿专等吃盘中的苹果.规定当盘空时,一次只能放一只水果.
同步关系
设信号量e(表示盘子为空),a(表示盘子里是苹果),o(表示盘子里是桔子)
int e=1,a=o=0;
main()
{father();
//son();
//daughter();/*三个为并发进程*/
}
father()
{while(1)
{ 洗水果
wait(e)
把水果放入盘子
if(水果是苹果)signal(a)
else signal(o)
}
}
son()
{while(1)
{wait(o)
从盘子里取桔子
signal(e)
吃桔子}
}
daughter()
{while(1)
{wait(a)
从盘子里取苹果
signal(e)
吃苹果}
}
设信号量e(表示盘子为空),a(表示盘子里是苹果),o(表示盘子里是桔子)
int e=1,a=o=0;
main()
{father();
//son();
//daughter();/*三个为并发进程*/
}
father()
{while(1)
{ 洗水果
wait(e)
把水果放入盘子
if(水果是苹果)signal(a)
else signal(o)
}
}
son()
{while(1)
{wait(o)
从盘子里取桔子
signal(e)
吃桔子}
}
daughter()
{while(1)
{wait(a)
从盘子里取苹果
signal(e)
吃苹果}
}
用wait、signal操作实现爸爸、儿子、女儿3个并发进程的同步
为什么Signal,Wait操作必须是不可分割的?
(计算机操作系统)wait操作和signal操作什么意思?
一个家庭由爸爸妈妈儿子女儿组成,今年他们的年龄合适71岁,爸爸比妈妈大2岁,儿子比女儿大3岁.
拔河比赛…爸爸一边,2儿子3女儿一边,爸爸输了,妈妈一边,1个儿子4个女儿一边,妈妈赢了,爸爸和一个儿子一边,妈妈和3个
儿子像妈妈,女儿像爸爸,是不是100%这样的?
用船运警察小偷爸爸妈妈儿子女儿过河
姐姐,妹妹,妈妈,爸爸,女儿,儿子,用英语怎么说
爸爸的年龄比儿子的4倍多三岁,比女儿的年龄7倍多3岁,问爸爸的
爸爸给儿子讲了3个故事的笑话
爸爸的爸爸的堂兄的儿子的女儿可以取吗?
爸爸对儿子和女儿说,我的年龄比儿子的年龄的4倍还多3岁,比女儿的年龄的7倍还多3岁.爸爸的年龄是多少?