so:sync_impl_reg_kryt [mgr Wiki]

[[so:sync_impl_reg_kryt]]
mgr Wiki

## Sposób implementacji regionu krytycznego

    Czekaj(mutex)
    while not B
      do begin
        pierwszy-licznik:=pierwszy-licznik+1;
        if drugi-licznik > 0
          then sygnalizuj(druga-zwłoka)
          else sygnalizuj(mutex)
        czekaj(pierwsza-zwłoka)
        pierwszy-lincznik:=pierwszy-licznik - 1;
        drugi-licznik:=drugi-licznik+1;
        if pierwszy-licznik > 0
          then sygnalizuj(pierwsza-zwłoka)
          else sygnalizuj(druga-zwłoka)
        czekaj(druga-zwłoka)
        drugi-licznik:=drugi-licznik -1;

        S;

        if pierwszy-licznik > 0
          then sygnalizuj(pierwsza-zwłoka)
          else if drugi-licznik > 0
            then sygnalizuj(druga-zwłoka)
            else sygnalizuj(mutex)

so/sync_impl_reg_kryt.txt · Last modified: 2006/05/18 09:10 by 213.134.172.237