某展览会任何时刻最多可容纳500名参观者,当展览厅中少于500名参观者时,则 厅外的参观者可立即进入,否则需在外面等待。参观者进入展览厅时,都必须在入口处登记(并领取资料和礼品),假定入口处有5位工作人员,每位工作人员每次 只能接待一个参观者登记,请用记录型信号量机制实现参观者进程的同步算法。 Register()是完成登记并领取资料和礼品的函数;visit()是完成参观展览的函数;leave()是表示参观完毕离开的函数。下面已经给出了部分代码,请填写1~2空白处的代码。 注:每一空可能不止一行代码。
(1)cap.value =500; (2 分)officer.value = 5;(2)wait(cap); (1 分)wait(officer); (1 分)register(); (2 分)signal(officer); (1 分)visit(); (1 分)leave(); (1 分)signal(cap); (1 分)