Java · Intermediário · Inglês · Técnico
ExecutorService
Interface que gerencia um pool de threads e a fila de tarefas, separando o que executar de como executar. Criada com Executors ou ThreadPoolExecutor.
Onde usar
Aparece no processamento assíncrono: submit devolve um Future. Em review: 'feche o executor com shutdown' e 'não crie pools sem limite'.
Em código
var pool = Executors.newFixedThreadPool(4);
Future<Integer> f = pool.submit(() -> 6 * 7);
System.out.println(f.get()); // 42
pool.shutdown();Exemplos
Submit the task to an ExecutorService with four threads.
Envie a tarefa para um ExecutorService com quatro threads.
Call shutdown, or the JVM never exits.
Chame shutdown, ou a JVM nunca termina.
Cuidado
Esquecer shutdown() mantém as threads vivas e a JVM não encerra; Executors.newCachedThreadPool pode criar threads sem limite.
Sinônimos
pool de threads