Я все перепробовал.Это тоже Как остановить задачу, запланированную в классе Java.util.Timer
У меня есть одна задача, которая реализует java.util.TimerTask
Я вызываю эту задачу в2 способа:
Я планирую таймер следующим образом:
timer.schedule (timerTask, 60 * 1000);
иногда мне нужно, чтобы эта работа начиналась немедленно, и она должна отменить timerTask, если есть работающие
cancelCurrentWork ();timer.schedule (timerTask, 0);
Эта реализация не останавливает текущую работу: (документация гласит: если задача выполняется во время этого вызова, задача будет выполнена до завершения, но никогда не запустится снова)
Но мне нужно, чтобы он остановился.
public static void cancelCurrentwork() {
if (timerTask!= null) {
timerTask.cancel();
}
}
Эта реализация просто отменяет таймер, но оставляет текущее выполнение задачи завершенной.
public static void cancelCurrentwork() {
if (timer!= null) {
timer.cancel();
}
}
Есть ли в таймере способ ОСТАНОВИТЬ текущее выполнение тактов, что-то вроде Thread.kill () или что-то в этом роде?Когда мне нужно остановить эту задачу, я хочу, чтобы она потеряла все свои данные.