[25][12][单选]某地区有一座独木桥,每次只允许一个人过桥,因此,桥两边人员过桥时需要采取适当的方式避免冲突。当采用以下单标志算法时:
int Crossbridge(int c //过桥进程,c = 0表示由南向北,c = 1表示由北向南 int turn = c; //标志 while (turn!= c //判断 { Cross(; //过桥 turn = 1 - c; //置标志为非 } Leave(; //离开 试问,程序中语句Cross(的作用是:
临界资源访问过程中的进入区
临界资源访问过程中的退出区
临界资源访问过程中的剩余区
临界资源访问过程中的临界区
答案
临界资源访问过程中的临界区
解析
使用单标志算法是建立一个公用整型变量turn,描述进程进入临界区的进程。每个进程在进入循环检查变量turn是否允许本进程进入。while(turn!= c语句的作用是在进入检查变量turn,Cross(语句是临界资源访问过程中的临界区,turn = 1 - c语句是临界资源访问过程中的退出区,Leave(语句是临界资源访问过程中的剩余区,故选D选项。
转载请注明出处。