2.3.2 进程互斥的软件实现方法
目录
2.3.2.1 单标志法
两个进程在访问完临界区后会把使用临界区的权限转交给另一个进程。也就是说每个进程进入临界区的权限只能被另一个进程赋予
int turn = 0; //turn表示当前运行的进程编号
P0进程 P1进程
while(turn != 0); 1 while(turn != 1); 5 //进入区
critical section; 2 critical section; 6 //临界区
turn = 1; 3 turn = 0; 7 //退出区
remainder section; 4 remainder section; 8 //剩余区
在这里turn就是一个标志,表示的是"让步"。turn 的初值为 0,即刚开始只允许 0 号进程进入临界区。若