IT rekvalifikace s garancí práce. Seniorní programátoři vydělávají až 160 000 Kč/měsíc a rekvalifikace je prvním krokem. Zjisti, jak na to!
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.
Avatar
tomekmichalhu:21.3.2015 11:58

Dobrý den, když takto vytvořím nové vlákno tak všechno funguje:

Thread t = new Thread(new ThreadStart(metoda));
t.Start();

metoda nemá žádné argumenty.
Problém nastává když do metody přidám argument, začne to psát: Error 1 No overload for 'metoda' matches delegate. Nevíte někdo co s tím?

 
Odpovědět
21.3.2015 11:58
Avatar
Gramli
Tvůrce
Avatar
Odpovídá na tomekmichalhu
Gramli:21.3.2015 12:35

Zkus:

Thread t = new Thread(new ParameterizedThreadStart(metoda));
t.Start();

vice: http://www.dotnetperls.com/…dthreadstart

Editováno 21.3.2015 12:35
Nahoru Odpovědět
21.3.2015 12:35
Kdo to říká ten to je...
Avatar
Odpovídá na Gramli
tomekmichalhu:21.3.2015 12:52

nepomohlo to, pořád to píše to samý

 
Nahoru Odpovědět
21.3.2015 12:52
Avatar
Gramli
Tvůrce
Avatar
Odpovídá na tomekmichalhu
Gramli:21.3.2015 13:07

Jo sorry, parametr metody musi byt object
tedy:

int i = 5;
Thread t = new Thread(new ParameterizedThreadStart(metoda));
t.Start((object)i);

public void metoda(object parametr)
{
//tady si to muzes pretypovat na ten typ ktery si poslal jako object
//treba
int i = (int)parametr;
}
Akceptované řešení
+20 Zkušeností
+2,50 Kč
Řešení problému
Nahoru Odpovědět
21.3.2015 13:07
Kdo to říká ten to je...
Avatar
Odpovídá na Gramli
tomekmichalhu:21.3.2015 13:44

už to de, dík :D

 
Nahoru Odpovědět
21.3.2015 13:44
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 5 zpráv z 5.