P
Pyto
Gast
Hallo,
ich frage mich wie ich einen Thread immer wieder wiederholen kann bis ich ihn unterbreche.
Habe es mal so versucht:
Beim aThread.start(); in der while-Schleife bekomme ich allerdings folgenden Fehler:
Exception in thread "Thread-1" java.lang.IllegalThreadStateException
Wie kann man bzw. muss man sonst Threads gestalten wenn man sie mehrmals ablaufen lassen möchte?
ich frage mich wie ich einen Thread immer wieder wiederholen kann bis ich ihn unterbreche.
Habe es mal so versucht:
Java:
public class Schedule extends Thread {
public Thread mThread;
public long mDelay;
public long mPeriod;
public Schedule(Thread aThread, long aDelay, long aPeriod) {
mThread = aThread;
mDelay = aDelay;
mPeriod = aPeriod;
}
public void run () {
try {
scheduleFixRate(mThread, mDelay, mPeriod);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
public void scheduleFixRate(Thread aThread, long aDelay, long aPeriod) throws InterruptedException {
Thread countDownThread = new CountDown(aDelay);
System.out.println("Die Aufgaben werden in " + aDelay + " Sekunden ausgeführt:");
countDownThread.start();
countDownThread.join();
aThread.start();
aThread.join();
while (!isInterrupted()) {
Thread countDownThread2 = new CountDown(aPeriod);
System.out.println("Die Aufgaben wiederholen sich in " + aPeriod + " Sekunden:");
countDownThread2.start();
countDownThread2.join();
aThread.start();
aThread.join();
}
}
}
Beim aThread.start(); in der while-Schleife bekomme ich allerdings folgenden Fehler:
Exception in thread "Thread-1" java.lang.IllegalThreadStateException
Wie kann man bzw. muss man sonst Threads gestalten wenn man sie mehrmals ablaufen lassen möchte?