Java: как получить готовые потоки для выполнения задач из запущенных потоков

Я работаю над многопоточным приложением с задачами, которые имеют различное время выполнения. Когда один поток завершается, есть ли способ взять на себя некоторые задачи из все еще работающего потока?

Вот пример. Я запускаю свою программу с 5 потоками, и у каждого есть 50 задач. Когда завершается самый быстрый запущенный поток, другой поток все еще должен выполнить 40 задач. Как я могу заставить законченный поток принять 20 задач из другого потока, чтобы каждый продолжал работать над 20 частями, вместо того, чтобы ждать, пока запущенный поток завершит оставшиеся 40?

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

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