Параллельное выполнение запланированных задач в Java


Answers

Используйте любую реализацию Timer, в том числе ScheduledThreadPoolExecutor, но пусть ваша задача таймера не выполняет вашу бизнес-логику, а вместо этого быстро запустит другую задачу (в пул кешированных потоков или собственный собственный поток), который фактически выполняет тяжелые вычисления.

Question

У меня есть TimerTask, который предназначен для сбора показателей с определенным интервалом. Однако возможно, что период выполнения задачи меньше времени выполнения задачи (иногда, если что-то истекает и задерживается).

Есть ли способ выполнить несколько TimerTasks или Runnables, потоков и т. Д. Одновременно, не дожидаясь завершения предыдущей задачи?

Я знаю, что Timer использует один поток, и ScheduledThreadPoolExecutor задерживает выполнение независимо от скорости.

Благодарю.






Links