Thread t = new Thread(new Runnable() { public void run() {} });
Chciałbym utworzyć wątek w ten sposób. Jak mogę w ogóle przekazać parametry do metody run
?Przekazywanie parametru do wątku Java
Edit: Aby mój problem specyficzny, należy rozważyć następujące segment kodu:
for (int i=0; i< threads.length; i++) {
threads[i] = new Thread(new Runnable() {public void run() {//Can I use the value of i in the method?}});
}
podstawie odpowiedzi Jona nie będzie działać, ponieważ i
nie zostało zgłoszone jako final
.
jeśli to możliwe byłoby łatwiejsze, jeśli napisać nową klasę, która implementuje Runnable i przekazuje do niego wszystkie potrzebne parametry w konstruktorze. – giocarmine
W systemie IntelliJ ma do tego funkcję autokorekty. Przypisuje zmienne używane w klasach anonimowych do zmiennych końcowych. –
Proponuję użyć programu THRAEDLOCAL, jego lepszego sposobu na zachowanie i przekazywanie zmiennych do wątków, spróbuj, może się skończyć lepiej –