免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1398 | 回复: 1
打印 上一主题 下一主题

急问:thread问题请教!!! [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2003-03-08 11:36 |只看该作者 |倒序浏览
S个学生,每个学生需要找K个老师评分。共有M个老师,每个老师需要给N个学生评分。S×K《=M×N。
整个评分过程T分钟。每个学生的评分过程(K个老师同时给其评分)D分钟。最后D分钟,不能开始任何评分过程,所有无关的老师和学生都要离场。最初所有的老师都在考场,每个老师评完N个学生后离场。学生以任意顺序进场,找到K个老师后开始评分。
学生:1.等待(random()%(T-D)分钟2.进考场3.等K个老师4.评分5.离场
老师:1。进考场2.重复N次a等学生来找b等待学生找够K个老师并开始评分c评分3.离场
每个学生和老师都得用单独的thread表示(老师不能直接用mutex)。
请教如何实现?
这样对不对?给每个老师的线程设两个condition variable,学生每找到一个老师,就signal老师第一个condition variable,然后老师就把标志位设为忙。学生找够n个老师以后,就signal老师的第二个condition variable,并且delay D分钟。然后老师就开始评分(delay D分钟)。
行吗?
这样的话,等待的老师就要确认signal是哪个学生来的。
这样是不是要设S个condition variable?

论坛徽章:
0
2 [报告]
发表于 2003-03-08 11:38 |只看该作者

急问:thread问题请教!!!

学生是以任意顺序进场,不用排队。等待Random()%(T-D)分钟就好,因为最后D分钟不进人
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP