. .NET framework to biblioteka klas w czasie uruchomienia dla C#, . .NET to środowisko wielowątkowe. Wątek to pojedynczy sekwencyjny proces sterowania w procesie. Wątek to byt w procesie. Proces może mieć wiele wątków, a wątek musi mieć proces nadrzędny.
Wątki zazwyczaj mają trzy podstawowe stany: odczyt, blokowanie i działanie. Z trzech stanów podstawowych wyprowadza się pięć podstawowych operacji wątków. Po pierwsze, wyprowadzimy, wątki są wyprowadzane w procesie. Po drugie, zaplanuj, wybierz gotowy wątek, aby wejść w stan operacji. Po trzecie, blokuj – jeśli wątek musi poczekać na zdarzenie podczas wykonywania, zostanie zablokowany. Po czwarte, odblokowuj, jeśli zdarzenie się zacznie, wątek zostaje odblokowany, wchodząc do gotowej kolejki. Po piąte, zakończenie, wątek się kończy, a kontekst rejestru i zawartość stosu, które wykonał, zostają zwolnione.
Nowy wątek to nowo wygenerowany obiekt wątku, który jeszcze nie przydzielił zasobów. Dlatego możesz używać tylko metod start() lub close().
Stan runable to sytuacja, gdy wątek otrzymuje niezbędne zasoby po uruchomieniu metody start() i wywołaniu metody run() do wykonania.
Stan Not Runable to stan, który wchodzi w moment, gdy następują następujące zdarzenia, wywołana jest metoda suspend(), wywołana jest metoda sleep(), wątek używa wait() do oczekiwania na zmienną warunkową, a wątek czeka na I/O.
Martwy to sytuacja, gdy metoda Run() zwraca się lub inny wątek wywołuje metodę stop(), a wątek wchodzi w stan martwy. Poniżej znajdują się dwa proste przykłady Thread.
Podsumowanie: Dlaczego warto używać wątku (wielowątkowości), ma to zapobiec blokowaniu głównego wątku; jeśli trzeba przetworzyć dużą ilość danych lub użyć czasochłonnej metody, musimy użyć wątkowego wielowątkowania.
Przykład:
Brak użycia wielowątkowości: Interfejs nie reaguje... To dlatego, że wielowątkowość nie jest używana
|