问题描述
一栋学生公寓里,只有一间浴室,且每次仅能容纳一人。公寓里有男生也有女生。因此制定如下规定:(1)每次只能有一个人在使用浴室;(2)女生的优先级要高于男生;(3)对于同性别的人来说,采用先来先服务的原则。下面给出4个函数,要求用信号量和PV原语实现这4个函数,来模拟上述规定下浴室里的过程。(假设初始时浴室为空)
(1)男生想要使用浴室: boy_wants_to_use_bathroom;
(2)男生离开浴室: boy_leaves_bathroom;
(3)女生想要使用浴室: girl_wants_to_use_bathroom;
(4)男生离开浴室: girl_leaves_bathroom;
按照个人理解,boy_wants_to_use_bathroom和girl_wants_to_use_bathroom是随机出现的,boy_leaves_bathroom和girl_leaves_bathroom是循环执行的。