Dostęp do zmiennej z innego wątku.

0

Kod brzydki, wiem. Potrzebuję zmiennej z pętli (sek), która jest w klasie myRunnable do klasy Sekundnik2. Nie wiem za bardzo jak to zrobić. Preferowałbym gotowy poprawiony kod z wytłumaczeniem w kodzie, tak się najlepiej uczę, ale każda pomoc jest mile widziana.

 import java.io.* ;
import java.util.Scanner;

public class Sekundnik2 {
public static void main(String[] args) {
Runnable runnable = new myRunnable();
Thread newThread = new Thread(runnable);
String czytaj;
  Scanner skaner;
  skaner = new Scanner(System.in);
InputStreamReader istream = new InputStreamReader(System.in) ;
System.out.println("Napisz 'czytaj' by poznac czas od wlaczenia programu.");
 czytaj = skaner.nextLine();
if (czytaj.equals("czytaj") ) {
int ok = myRunnable.sek;
System.out.println("Program dziala przez " + ok + " sekund.");
}
}
}
class myRunnable implements Runnable {
  public void run() {
  int sek;
sek = 0;
if( sek < 0) {
try {
Thread.sleep(1000);
}
catch(InterruptedException ex) {
Thread.currentThread().interrupt();
}
sek = sek + 1;
}
  }}
0

Niech ta twoja zmienna będzie polem klasy a nie zmienną lokalną wewnątrz funkcji. Wtedy normalnie będziesz miał do niej dostęp.

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