jaka jest różnica między tłem, pierwszym planem a głównymi wątkami? & Jakie są typy różnic w wątkach w .NET?Co to są tło, pierwszy plan i główne wątki?
Odpowiedz
Wątek tła (którego obiekt wątku ma właściwość Background
ustawiona na true
) spowoduje, że aplikacja nie zostanie zamknięta.
Po wyjściu wszystkich normalnych wątków (pierwszoplanowych) wszelkie uruchomione wątki w tle zostaną natychmiast zakończone. Ponadto, jeśli AppDomain jest rozładowany, wszystkie wątki w tle w AppDomain są natychmiastowo przerywane.
Gwintami zarządzanymi przez ThreadPool są wątki tła.
Nić pierwszoplanowa to zwykły wątek.
Głównym wątkiem jest początkowy wątek, który uruchomił program. (Wątek z metodą Main
)
Aby uzyskać więcej informacji, zobacz here.
Rozróżnienie to jest zwięźle określone w dokumentacji. Nici w tle są przerywane po zakończeniu programu.
http://msdn.microsoft.com/en-us/library/h339syd0(VS.71).aspx
Dobry link +1 :) –
Wątek tło jest właśnie to, że jest to wątek, który jest uruchomiony w tle z wątku UI aplikacji. Wątek interfejsu użytkownika w aplikacji typu WinForm jest wątkiem odpowiedzialnym za ponowne malowanie interfejsu użytkownika i innych interakcji użytkownika.
Przeniesienie długich uruchomionych procesów do wątku tła pomoże zwiększyć użyteczność. Oto dobry intro document do gwintowania dla Ciebie.
SLaks, czy istnieje ograniczenie liczby wątków w wątku? – SoftwareGeek
Tak, istnieje; przeczytaj link. Domyślny limit to 250 na procesor; możesz to zmienić, wywołując 'ThreadPool.SetMaxThreads'. – SLaks
Mogę się mylić, ale myślałem, że limit jest na rdzeń. Kolejna kwestia, istnieje bardzo mała szansa, że potrzebujesz tak wielu wątków w swojej aplikacji. Wszystko, co masz zamiar zrobić, to dodanie wątku narzutowego. Z doświadczenia wynika, że 2/3 wątków rdzeniowych wydaje się dobrym wyborem. –