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?