Hallo zusammen.
Ich habe folgendes Problem.
Ich habe einen Thread, der in etwa so aussieht:
Mein Thread läuft.
Wenn jetzt gerade mein Timer von run() läuft und ich method1 aufrufe und somit einen weiteren Timer starte, scheinen die Timer und ihre Events nicht mehr richtig zu funktionieren. Kein Timerevent auf meinen Actionlistener löst mehr aus.
Was kann der Grund sein?
Können keine zwei Timer gleichzeitig laufen?
Hier noch mein Actionlistener:
Bitte helft mir, ich verzweifle langsam ^^"
Ich habe folgendes Problem.
Ich habe einen Thread, der in etwa so aussieht:
Code:
class MyThread extends Thread{
//overwrite
void run(){
EngelTimeOutHandler ToHndl = new EngelTimeOutHandler();
Timer t1 = new Timer(20000, ToHndl);
t1.setRepeats(false);
t1.start();
while(!ToHndl.isTimeOut() ){
//Do something
}
}
void method1(){
EngelTimeOutHandler ToHndl = new EngelTimeOutHandler();
Timer t1 = new Timer(1000, ToHndl);
t1.setRepeats(false);
t1.start();
while(!ToHndl.isTimeOut() ){
//Do something different
}
}
}
Mein Thread läuft.
Wenn jetzt gerade mein Timer von run() läuft und ich method1 aufrufe und somit einen weiteren Timer starte, scheinen die Timer und ihre Events nicht mehr richtig zu funktionieren. Kein Timerevent auf meinen Actionlistener löst mehr aus.
Was kann der Grund sein?
Können keine zwei Timer gleichzeitig laufen?
Hier noch mein Actionlistener:
Code:
public class EngelTimeOutHandler implements ActionListener{
private boolean mIsTimeOut = false;
public void actionPerformed(ActionEvent e) {
mIsTimeOut = true;
}
public boolean isTimeOut(){
return mIsTimeOut;
}
}
Bitte helft mir, ich verzweifle langsam ^^"