Jak zaimplementować ExecutorService do wykonywania zadań na zasadzie rotacji?

używamjava.util.concurrent.ExecutorService zstała pula wątków wykonać listę zadań. Moja lista zadań będzie zazwyczaj wynosić około 80-150 i ograniczyłem liczbę wątków uruchomionych w dowolnym momencie do 10, jak pokazano poniżej:

<code>ExecutorService threadPoolService = Executors.newFixedThreadPool(10);

for ( Runnable task : myTasks ) 
{     
    threadPoolService.submit(task); 
}
</code>

Mój przypadek użycia wymaga, aby nawet ukończone zadanie zostało ponownie przesłane doExecutorService ale powinno być wykonane / ponownie wykonane tylko wtedy, gdy wszystkiejuż złożone zadania są serwisowane / uzupełniane. Zasadniczo złożone zadania powinny być wykonywane na zasadzie rotacji. Dlatego też nie będziethreadPoolService.shutdown() lubthreadPoolService.shutdownNow() zadzwoń w tej sprawie.

Moje pytanie brzmi: jak wdrożyćExecutorService obsługa zadań rotacyjnych?

questionAnswers(4)

yourAnswerToTheQuestion