Есть метод
public int TIMER_funk(int seco) {
this.sec = seco;
timer_sec.schedule(new TimerTask() {
@Override
public void run() {
Platform.runLater(new Runnable() {
@Override
public void run() {
if (sec > 0) {
sec--;
int minutes = sec / 60;
int seconds = sec % 60;
SECONDS.setTextFill(seconds < 4 ? Color.RED : Color.BLACK);
MINUTES.setText((minutes < 10 ? "0" : "") + minutes);
SECONDS.setText((seconds < 10 ? "0" : "") + seconds);
} else if (sec == 0) {
sec = 9;
int count = 1;
Alert alert = new Alert(AlertType.INFORMATION);
alert.setTitle("You need a break");
alert.setHeaderText(null);
alert.setContentText("5 minutes!!!");
alert.showAndWait();
}
}
});
}
}, 1000, 1000);
return 1;
}
В другом методе мне нужно чтобы этот запускался больше одного рвза
TIMER_funk(15);
TIMER_funk(22);
ВОТ ТАК ПОЛУЧИЛОСЬ, но скорость увеличивается.
ScheduledExecutorService execService = Executors.newScheduledThreadPool(5);
execService.scheduleWithFixedDelay(new Runnable() {
@Override
public void run() {
TIMER_funk(15);
}
public void run2() {
}
public void run3() {
TIMER_funk(10);
}
}, 0, 16, TimeUnit.SECONDS);
Решение на "вскидку". Создайте наследника Runnable интерфейса, в котором объявите очередь LinkedBlockedQueue. В нее вы будете добавлять ту задачу, которую надо выполнить по таймеру с заданными параметрами. После получения задачи из очереди, запускаете ее через ScheduledExecutorService и делаете для ScheduledFuture метод get() дожидаясь пока она исполнится.
Таким образом - два раза добавите - два раза выполнится. Три - значит три. Причем последовательно.
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Привет, использую java 16, соответственно беру sqljdbc4
Можно как-то оптимизировать, метод изложенный нижеУ меня создаются картинки различного цвета с помощью генератора случайных чисел, всё работает...
У меня есть поле, в которое я ввожу имя пользователя, а проверка на валидацию следующая: