Procesy, wątki
Wielowątkowa aplikacja sortująca.
- Działanie programu:
- opcja menu uruchamiająca dialog modalny
- edit - liczba liczb do sortowania
- przycisk OK - sprawdzenie poprawności liczby, zamknięcie dialogu,
uruchomienie sortowania
- sortowanie
- dwa wątki, jeden sortujący metodą bąbelkową, drugi przez wstawianie
lub wybór
- podział okna na dwie części, część lewa dla sortowania bąbelkowego
- w każdej części aktualne zaawansowanie procentowe sortowania
- naciśnięcie lewego przycisku myszy w części - uśpienie/obudzenie
wątku z informacją w odpowiedniej części okna
- naciśnięcie prawego przycisku myszy - synchronizacja obu wątków
na poziomie zaawansowania szybszego z wątków
- szybszy ma czekać do chwili, gdy wolniejszy osiągnie jego stopień
zaawansowania
- wykorzystać mechanizmy synchronizacji, nie stosować busy
waiting
- w momencie wyrównania zaawansowania szybszy wątek ponownie zaczyna
działać
- można założyć, że w momencie naciśnięcia prawego przycisku myszy
żaden z wątków nie będzie uśpiony przy pomocy lewego przycisku
myszy