
软考考点之前趋图与并发执行
发布日期:2021-05-10 14:09:07
浏览次数:12
分类:精选文章
本文共 460 字,大约阅读时间需要 1 分钟。
前趋图:
描述程序各部分(程序段或语句)之间的关系。
P(S):①将信号量S的值减1,即S=S-1;
②如果S>=0,则该进程继续执行;否则该进程置为等待状态,排入等待队列。 V(S):①将信号量S的值加1,即S=S+1; ②如果S>0,则该进程继续执行;否则释放队列中第一个等待信号量的进程。P操作,我们可以看作是获得或者请求、消耗一个信号量。
V操作,我们可以看作是释放或者发送一个信号量。
我们可以这样理解:看前驱图,
P1执行完之后,会向P2和P3分别发送两个信号S1和S2(所以a处填V(S1)V(S2);
然后是P2执行,P2执行之前,要先获得S1(所以b处填P(S1));
P2执行完之后,会向P3发送一个信号S3(所以b下一处为V(S3));
P3执行之前,要先获得P2发送给P3的信号,也要获得P1发送给P3的信号(所以c处填(P(S2)P(S3)));P3执行完后,会向P4发送一个信号S4(所以c下一处为V(S4));
P4执行之前,要先获得P3发送给P4的信号方可执行(所以d处填P(S4))。
发表评论
最新留言
逛到本站,mark一下
[***.202.152.39]2025年04月12日 08时46分43秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
SQL server 2016安装
2021-05-10
A + B Problem II大数A+B
2021-05-10
Excuses, Excuses! map的应用
2021-05-10
搭建nfs服务器练习
2021-05-10
苹果M1芯片电脑运行软件闪退崩溃的解决方法
2021-05-10
linux基础:命令行的使用(shell)、shell里的快捷键、linux基础设置
2021-05-10
Angular动态表单使用
2021-05-10
php中奖概率算法,刮刮卡/大转盘抽奖算法
2021-05-10
排序算法 -- (五)冒泡排序
2021-05-10
linux 编译出现的错误
2021-05-10
echarts折线图联动的坑
2021-05-10
如何保证消息队列的高可用?
2021-05-10
第五章 LAMP平台部署及应用
2021-05-10
编写和使用shell脚本
2021-05-10
Vue 判断对象是否存在某个属性/字段
2021-05-10
安卓学习笔记-控件-ImageView
2021-05-10
安卓学习笔记-Fragment-基本使用
2021-05-10
【Elasticsearch】elasticsearch shard 分片
2021-05-10
毕业论文查重时泄露怎么办?
2021-05-10
发布项目到maven中央仓库
2021-05-10