Uruchamiamy współbieżnie dwa następujące procesy.
process P1;
begin
while (true) do
begin
sekcja_lokalna;
protokol_wstepny;
rejon_krytyczny;
protokol_koncowy;
end;
end;
process P2;
begin
while (true) do
begin
sekcja_lokalna;
protokol_wstepny;
rejon_krytyczny;
protokol_koncowy;
end;
end;
Chcemy zapewnić, że w tym samym czasie co najwyżej jeden z nich wykonuje fragment programu oznaczony rejon_krytyczny. Jakie instrukcje należy umieścić w protokołach, aby zrealizować ten cel?