У меня есть задача, которую нужно выполнить по расписанию. (Он в основном опрашивает базу данных в поисках изменений, а затем выполняет код в зависимости от результата). Проблема в том, что мне нужно, чтобы задание опроса выполнялось, даже если оно уже выполняется.
До сих пор я пытался использовать комбинацию Timer / TimerTask с методом scheduleAtFixedRate()
и комбинацию ScheduledThreadPoolExecutor / Thread с методом scheduleAtFixedRate()
.
Оба ждут завершения текущей запланированной задачи перед запуском следующей. Мне нужно иметь возможность планировать выполнение задачи каждые 5 секунд и запускать ее, даже если последнее выполнение задачи еще не завершено.
Есть идеи?