Wątki w c#

Odpowiedz Nowy wątek
2015-02-17 19:16
Mały Szczur
0

Witam, chciałbym zrobić aplikację opartą na kilku wątkach. Jeden odpowiadałby za grafikę (interfrejs), drugi za ładowanie strony w webBrowser1 (po naciśnięciu buttona) aby "ustabilizować" program. Ktoś wie jak to można zrobić?

Pozostało 580 znaków

2015-02-17 19:19
0

Otworzyć jakiś tutorial/książkę/bloga i zacząć czytać? Przecież nikt ci tutaj nie napisze tutoriala.

edytowany 1x, ostatnio: Wizzie, 2015-02-17 19:19

Pozostało 580 znaków

2015-02-17 19:20
Mały Szczur
0

Czytałem już kilka poradników o wątkach jednak nie za bardzo je zrozumiałem. Potrzebuję konkretnego przykładu

Pozostało 580 znaków

2015-02-17 19:34
ne0
0

http://lmgtfy.com/?q=c%23+threading+example


Pomogłem? To dobrze :)

Pozostało 580 znaków

2015-02-17 19:37
1

Masz:

private void DoWork()
{
     //tutaj cos sie wykonuje
}
private void button1_Click(object sender, EventArgs e)
{
     Task.Factory.StartNew(DoWork);
}

I DoWork() wykona się nie blokując wątku głównego.

Teraz wracaj do czytania tutoriala(najlepiej MSDN) bo i tak nic to ci nie pomogło.
I na przyszłość to opisuj problem normalnie, bo żeby odpowiedzieć na twoje pytanie to trzeba by napisać cały tutorial.

Pozostało 580 znaków

2015-02-17 20:30
0

Ja na ogół korzystam z takiego sposobu, ProgramWork to metoda, która ma uruchomić się w osobnym wątku


Thread Thr = new Thread(new ThreadStart(this.ProgramWork));
Thr.Priority = ThreadPriority.Normal;
Thr.Start();

Thread Thr = new Thread(new ParameterizedThreadStart(this.ProgramWork));
Thr.Start(ParamObject);
Słabe rozwiązanie. Lepiej skorzystać z TPL(Task Parallel Library). - some_ONE 2015-02-17 20:55
Właśnie takie rozwiązanie swego czasu znalazłem jak sam szukałem, jak robi się wątki. Ostatnio potrzebowałem wątki w C++11 i rozwiązanie jest podobne, czyli tworzenie obiektu wątku z przypięciem metody, a potem uruchomienie wątku, tylko, że w C++ wątek uruchamia się w momencie utworzenia, ale idea jest ta sama. Dlaczego takie rozwiązanie jest słabe i TPL jest lepszy? - andrzejlisek 2015-02-18 10:15
Tworzenie Thread bezpośrednio jest zarówno bardziej czasochłonne jak i zasobożerne niż tworzenie Taska. Tak jak obecnie rzadko używa się gołych tablic na rzecz kolekcji tak i rzadko obecnie trzeba tworzyć Thready jak mamy do dyspozycji TPL. - some_ONE 2015-02-18 22:54

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

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