在生产流水线上有三个工序:取件(getter),传送(transfer),加工(processor),刚开始可以取件,才能通过传送带传送,传送带送到加工的位置才能进行加工,然后才可以开始下一轮的取件。试用信号量的P、V操作实现getter、transfer、processor之间的同步与互斥关系,补全下面代码中的空白。每个空白计1分。
信号量g_mutex = 1 ;/取件访问互斥
信号量t_mutex = 2 ;/传送访问互斥
信号量p_mutex = 3 ;/加工访问互斥
void getter () {
while(true) {
P(g_mutex);
取件工序操作
V( 4 )
}
}
void transfer () {
while(true) {
P( 5 ) ;
传送工序操作
V( 6 )
}
}
void processor () {
while(true) {
P( 7 );
加工工序操作
V( 8 )
}
}
void main() {
创建getter进程
创建 transfer进程
创建 processor进程
其他处理
}
查看答案和解析【26考研辅导课程推荐】:26考研集训课程,VIP领学计划,26考研VIP全科定制套餐(公共课VIP+专业课1对1) , 这些课程中都会配有内部讲义以及辅导书和资料,同时会有教研教辅双师模式对大家进行教学以及督学,并配有24小时答疑和模拟测试等,可直接咨询在线客服老师领取大额优惠券。
启航教育热门私房课
MORE小班面授 名额有限 抢先体验
编辑推荐
姓名
手机号