while (true) {
Local_section(1);
K1 = 0;
while (K2 != 1) {
if (turn == 2) {
K1 = 1;
while (turn != 1) {
//
};
K1 = 0;
}
}
Critical_section(1);
K1 = 1;
turn = 2;
}
|
|
while (true) {
Local_section(2);
K2 = 0;
while (K1 != 1) {
if (turn == 1) {
K2 = 1;
while (turn != 2) {
//
};
K2 = 0;
}
}
Critical_section(2);
K2 = 1;
turn = 1;
}
|