Como faço para saber se todas as virutal threads foram concluídas para que eu possa fazer um processamento final?
O código que tenho é este:
private void gerarXmls(final int lotes) {
System.out.println("Gerando os XMLs....");
try (var executor = Executors.newVirtualThreadPerTaskExecutor()) {
for (int lote = 0; lote < lotes; lote++) {
final var command = ExportaAcordaoCommand.with(lote, Integer.parseInt(quantidadePorLote));
final var acordaoThread = new ExportaAcordaoRunnable(acordaoPath, exportaAcordaoUseCase, command);
executor.execute(acordaoThread);
}
}
}
//Antes de seguir, preciso saber se todas as threads foram concluídas.