Reconfigurer un TimerTask
Bonjour a tous,
Dans le code ci-dessous, je construis un TimerStack pour call des méthodes etc .. J'ai configure le TimerTask suivant une période dans ma variable SPEED. Toutefois, cette variable peut changer de valeur, je dois donc ré-actualiser sa valeur dans le TimerTask.
Je cancel mon TimerTask, si la valeur de ma variable SPEED est différente de speed. Et j'essaie de le faire repartir avec la nouvelle période mais ça bloque ...
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
| public void MyThread() {
Runnable myRunnable = new Runnable() {
public void run() {
final TimerTask task = new TimerTask() {
@Override
public void run() {
if (!(isOnStation())) {
// Code ..
} else {
try {
// Code ..
Thread.sleep(300);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
if(speed != SPEED){
cancel();
speed = SPEED;
run();
}
}
};
Timer timer = new Timer();
timer.scheduleAtFixedRate(task,500, SPEED);
}
};
Thread thread = new Thread(myRunnable);
thread.start();
} |
Merci d'avance de vos conseils! :)