Gra sieciowa - wyjaśnienie działania semaforów

0

Witam. Do napisania mam pewien projekt.
Otóż:centrala główna, dwie lokalne i 6 telefonów, po trzy dla każdej lokalnej
każda centrala lokalna ma swój plik poprzez który wszystkie programy się komunikują.
Gra ma polegać na tym że jak w centrali głównej wprowadzam kwotę do zgadnięcia i wciskam przycisk to ta kwota ma trafić do plików central lokalnych - gra zostaje rozpoczęta.
Za pomocą telefonów zgaduje wartość kwoty, dostając w odpowiedzi komunikat (jeżeli nie trafiłem) że moja kwota zgadywana jest za duża lub za mała.
Jeżeli trafiłem, centrala główna zamyka grę a inne telefony mają dostać info kto wygrał.
Chce to napisać W C#. Każda moja próba kończy się fiaskiem. Chciałem użyć semaforów ale nie bardzo wiem jak;/ Może ktoś mi objaśni ich działanie na przykładzie mojego programu ewentualnie podeśle jakieś wskazówki lub coś podobnego.
Pozdrawiam

0

Lokalna centrala musi mieć mutex na analizę odpowiedzi z telefonów, tzn w danej chwili sprawdza odpowiedź tylko z jednego telefonu. Analogicznie centrala główna ma mutex na odczyt wiadomości od central lokalnych, tzn. w danej chwili sprawdza wiadomość tylko od jednej.
Gdzie widzisz problem?

0

Dzięki. Poradziłem sobie z blokowaniem. Chyba zostaje problem centrali która działa jakby w tle. Mam funkcje do odczywania liczb zapisanych przez telefony oraz centrale główną, funkcje do konwertowania/konwersji i porównywania tych liczb jednak gdy wywołuje te funkcje, one wykonują się tylko raz a chciałbym żeby centrala co jakiś czas sprawdzała pliki tekstowe i później brała się za ich analize. Tu powinienem chyba użyć funkcj thread.sleep tylko to nie zdaje egzaminu;/

1

sleep? ech...
Użyj jakiegoś Schedulera ;)

1 użytkowników online, w tym zalogowanych: 0, gości: 1