SO-1st-2.3-w12.tresc-1.0-Slajd37
Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania
Synchronizacja śpiących fryzjerów za pomocą semaforów (3)
Fryzjer czeka na klienta na semaforze klient , który jest podnoszony przez klienta po uzyskaniu miejsca w poczekalni. Po zakończeniu tej operacji fryzjer wie, że ma klienta więc czeka na wolny fotel opuszczając semafor fotel . Jeśli operacja się zakończy to jest fotel dla klienta i można przejść do obsługi. Najpierw zmniejszana jest zmienna l_czek , bo zwalnia się miejsce w poczekalni. Następnie poprzez podniesienie semafora fryzjer , przekazywany jest klientowi sygnał, że może wyjść ze stanu czekania i przejść do właściwej obsługi. Po zwolnieniu semafora mutex fryzjer też przechodzi do obsługi, po zakończeniu której zwalnia fotel (podnosi semafor fotel ).