Ich habe das folgende Problem. Alle 2 Sekunden geht das Programm in eine if-Anweisung. In dieser if-Anweisung möchte ich einen Timer haben, der mir nach 15 Sekunden eine Nachricht gibt. Der Timer sollte mit einer Verzögerung von 1 Sekunde ausgeführt werden. Aber während ich mit dem Timer "warte", wird die if-Anweisung noch 7 Mal ausgeführt. Mein Problem ist, ich habe immer 7 gleiche TimerTask gleichzeitig ausgeführt. Wie kann ich dieses Problem lösen?Java TimerTask Abbrechen
if (response == true) {
final Timer timer = new Timer();
final int keepAliveTimeout = 15000; //15 seconds
timer.schedule(new TimerTask() {
@Override
public void run() {
if (response) {
response = false;
Log.i(TAG, "********Response******");
timeoutCounter = 0;
} else if (timeoutCounter > keepAliveTimeout) {
Log.i(TAG, "********Timer Timeout******");
}
Log.i(TAG, "********Timer******");
timeoutCounter = timeoutCounter + 1000;
}
}, 0, 1000);
}