Я видел здесь и там часть моего ответа, но не полной. < /p>
Runnable helloRunnable = () -> System.out.println("Hello world " + LocalDateTime.now().toLocalTime().toString());
ScheduledExecutorService executor = Executors.newScheduledThreadPool(1);
executor.scheduleAtFixedRate(helloRunnable, 0, 10, TimeUnit.SECONDS);
< /code>
Но это запускает только один поток и не имеет метода или параметра, чтобы убить процесс через определенное время < /p>
Что я хотел бы сделать, это запустить 5 времени в параллельных каждые 10 секунд для 10 минут < /p>
/> edit < /strong> < /p>
Если будущие люди заинтересованы в его полном примере, это здесь: < /p>
public static void main(String[] args) {
Runnable helloRunnable = () -> System.out.println("Hello world " + LocalDateTime.now().toLocalTime().toString());
Runnable testRunnable = () -> System.out.println("Test runnable " + LocalDateTime.now().toLocalTime().toString());
List taskList = new ArrayList();
taskList.add(helloRunnable);
taskList.add(testRunnable);
ScheduledExecutorService executor = Executors.newSingleThreadScheduledExecutor();
List promise = executor.scheduleAtFixedRate(runnable, 0, 1, TimeUnit.SECONDS);
promiseList.add(promise);
}
List cancelList = new ArrayList();
for (ScheduledFuture promise : promiseList) {
Runnable cancelRunnable = () -> {
promise.cancel(false);
executor.shutdown();
};
cancelList.add(cancelRunnable);
}
List canceled = executor.schedule(runnable, 10, TimeUnit.SECONDS);
canceledList.add(canceled);
}
}
Подробнее здесь: https://stackoverflow.com/questions/497 ... unt-of-tim