Как выполнить несколько задач неоднократно и остановить ее после определенного времени на JavaJAVA

Программисты JAVA общаются здесь
Anonymous
Как выполнить несколько задач неоднократно и остановить ее после определенного времени на Java

Сообщение Anonymous »

Я видел здесь и там часть моего ответа, но не полной. < /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

Вернуться в «JAVA»