Управление порядком выполнения задач с помощью ExecutorService

У меня есть процесс, который делегирует асинхронные задачи в пул потоков. Мне нужно убедиться, что определенные задачи выполняются по порядку. Так например

Задачи приходят в порядке

Задачи a1, b1, c1, d1, e1, a2, a3, b2, f1

Задачи могут выполняться в любом порядке, кроме случаев, когда существует естественная зависимость, поэтому a1, a2, a3 должны обрабатываться в этом порядке путем выделения одного и того же потока или блокировки их, пока я не узнаю, что предыдущая задача # была завершена.

В настоящее время он не использует пакет Java Concurrency, но я подумываю о переходе на использование управления потоками.

У кого-нибудь есть подобное решение или предложения о том, как этого добиться

Ответы на вопрос(8)

Ваш ответ на вопрос