Zadejte hledaný výraz...

C# a Threading

skraloupak
verified
rating uzivatele
(7 hodnocení)
25. 1. 2013 01:36:37
Zdravím,
dělám na aplikaci, kde bych potřeboval malinko pomoci, už si nevím rady. Mám metody, co načítají velké soubory (cca 4) a já bych potřeboval vyskakovací okno v novém vlákně, kde by byl například textBlock, aby se ukládali informace o tom jaký se momentálně zpracovává soubor. Například:
Načítá se soubor abs.txt ...
Soubor abs.txt načten.
Načítá se soubor absss.txt ...
Soubor absss.txt načten.
....
Jakoby log,který je při instalaci nějakého programu.
Vlákno mám vytvořené takto:
Thread newWindowThread = new Thread(new ThreadStart(() =>
{
//Ve tříde Window1 je pak metoda která napňuje např textBlock
Window1 window1 = new Window1();
window1.ShowActivated = true;
window1.Show();
System.Windows.Threading.Dispatcher.Run();
}));
newWindowThread.SetApartmentState(ApartmentState.STA);
newWindowThread.IsBackground = true;
newWindowThread.Start();
pod ním mám foreach, který prohledává jeden textový soubor, který v sobě uchovává cesty k dalším souborům, na každém řádku jeden. Každý z těchto řádků "cest k souboru" zpracovává jiná metoda a ty ukládá hodnoty do tříd. Kdyby tam nebyly ty metody, dal bych ten celý foreach, do toho vlákna, ale takhle to nejde, hned na mě vyskočí chyby.
Jde tedy nějak předávat parametri z foreachu do běžícího vlákna abych mohl naplňovat řádky v TextBloku?
Děkuji za rady
25. 1. 2013 01:36:37
https://webtrh.cz/diskuse/c-a-threading#reply857559
Ahoj,
běžně se to dělá událostmi. Definuješ si vlastní událost, kterou ve foreach vyhodíš a v GUI vlákně zachytíš.
25. 1. 2013 06:30:33
https://webtrh.cz/diskuse/c-a-threading#reply857558
skraloupak
verified
rating uzivatele
(7 hodnocení)
25. 1. 2013 11:15:17
Ahoj, to jsem si myslel něco takového, ale zaboha nevím jak na to. Nevěděl by jsi pod čím to hledat například na googlu ?:) popř. nějakou doporučenou stránku, věnovou tomu ?:)
25. 1. 2013 11:15:17
https://webtrh.cz/diskuse/c-a-threading#reply857557
Zkus třeba zadat do Googlu "C# events", hned první odkaz na msdn.
25. 1. 2013 19:38:51
https://webtrh.cz/diskuse/c-a-threading#reply857556
Pro odpověď se přihlašte.
Přihlásit