Witam,
jestem w trakcie tworzenia aplikacji do obróbki obrazów rastrowych. Mam zaimplementowanych kilka podstawowych algorytmów, które wykonywane są w nowych wątkach a wraz z postępami danego przetworzenia zmienia się progress bar.
Thread t = new Thread(nazwa_operacji);
t.Start();
Potrzebuje dodać taką funkcjonalność:
- Wczytuje plik tekstowy z zapisanymi operacjami w pewnej kolejności (przykład: suma obrazów, negatyw, filtr medianowy)
- Po wciśnięciu przycisku wykonaj pobiera mi pierwszą operacje (tu suma obrazów) i ją uruchamia.
- Po zakończeniu poprzedniej operacji pobieramy kolejną operację (negatyw) i ją wykonuje.
I tu pojawia się problem, jak sprawdzić czy operacja wykonywana w innym wątku zakończyła swoja pracę? jak "czekać" aż pierwsza operacja zostanie zakończona aby uruchomić kolejną? Niestety ze względu na charakter tego zadania nie mogę podać kodu.
Jestem studentem i ciągle się uczę dlatego mam jeszcze takie pytanie: czy uruchamiając wątek, tak jak podałem wyżej, muszę go po zakończeniu operacji sam zamknąć? Jeśli tak to w jaki sposób?