文章
126
粉丝
35
获赞
0
访问
24.9k
列出前置关系
任务 | 前置任务 |
A | 无 |
B | 无 |
C | A,B |
D | 无 |
E | C,D |
AOV图
进行拓扑排序:ABCDE
每个同步关系一个信号量,即每个AOV网中每条有向边(表示一个同步关系)构造一个信号量,默认初始为0
semaphore S_AC = 0; //控制操作A和C的执行顺序
semaphore S_BC = 0; //控制操作B和C的执行顺序
semaphore S_CE = 0; //控制操作C和E的执行顺序
semaphore S_DE = 0; //控制操作D和E的执行顺序
cobegin
Process A() {
完成操作A;
signal(S_AC);
}
Process B() {
完成操作B;
signal(S_BC);
}
Process C() {
wait(S_AC);
wait(S_BC);
完成操作C;
signal(S_CE);
}
Process D() {
完成操作D;
signal(S_DE);
}
Process E() {
wait(S_CE);
wait(S_DE);
完成操作E;
}
coend
登录后发布评论
暂无评论,来抢沙发