T
ThreadProb
Gast
Tag,
hab ein kleines Problem mit Threads.
Mein HauptThread startet mehrere "Unter-Threads" und steuert sie.
Das ganze habe ich so implementiert:
Zu meinen Problemen:
- Das Pausieren klappt, allerdings werden nicht alle Threads wieder fortgesetzt (nur ein paar).
- stopThreads() funktioniert überhaupt nicht, das interrupt() interessiert meine Threads nicht ^^
Hab ich was falsch implementiert?
hab ein kleines Problem mit Threads.
Mein HauptThread startet mehrere "Unter-Threads" und steuert sie.
Das ganze habe ich so implementiert:
Java:
public void startThreads() {
threads = new Thread[10];
for(int i = 0; i < threads.length; i++) {
threads[i] = new Thread(MyThread());
threads[i].start();
}
for(int i = 0; i < threads.length; i++) {
try {
threads[i].join();
} catch (InterruptedException e) {
threads[i].interrupt();
}
}
}
// bei pauseThreads setze ich einfach ein boolean auf true und in meinen
// unterthreads check ich dieses boolean und mach:
// synchronized(this) {
// while(isWaiting) {
// try {
// wait();
// } catch(InterruptedException e) {
// currentThread.interrupt();
// }
// }
public void continueThreads() {
isWaiting = false;
for(int i = 0; i < threads.length; i++) {
synchronized(threads[i] {
threads[i].notify();
}
}
}
public void stopThreads() {
for(int i = 0; i < threads.length; i++) {
synchronized(threads[i] {
threads[i].interrupt();
}
}
}
Zu meinen Problemen:
- Das Pausieren klappt, allerdings werden nicht alle Threads wieder fortgesetzt (nur ein paar).
- stopThreads() funktioniert überhaupt nicht, das interrupt() interessiert meine Threads nicht ^^
Hab ich was falsch implementiert?