大家好,我是小新,我来为大家解答以上问题。pv操作通俗理解,pv操作是在什么上的操作很多人还不知道,现在让我们一起来看看吧!
1、P就是请求资源,V就是释放资源。
2、 例如一个司机与售票员的例子
3、 在公共汽车上,为保证乘客的安全,司机和售票员应协调工作:
4、 停车后才能开门,关车门后才能行车。用PV操作来实现他们之间的协调。
5、 S1:是否允许司机启动汽车的变量
6、 S2:是否允许售票员开门的变量
7、 driver()//司机进程
8、 {
9、 while (1)//不停地循环
10、 {
11、 P(S1);//请求启动汽车
12、 启动汽车;
13、 正常行车;
14、 到站停车;
15、 V(S2); //释放开门变量,相当于通知售票员可以开门
16、 }
17、 }
18、 busman()//售票员进程
19、 {
20、 while(1)
21、 {
22、 关车门;
23、 V(S1);//释放开车变量,相当于通知司机可以开车
24、 售票
25、 P(S2);//请求开门
26、 开车门;
27、 上下乘客;
28、 }
29、 }
30、 注意:busman() driver() 两个不停循环的函数
本文到此讲解完毕了,希望对大家有帮助。