Caros,
no meu código
ExecutorService executor = Executors.newFixedThreadPool(6);
Runnable task = () -> minhaFuncao();
executor.submit(task);
executor.awaitTermination(15, TimeUnit.MILLISECONDS);
a linha 4 o parâmetro 15 diz que e executor vai esperar 15 milissegundos as threads serem executadas. Devido a grande quantidade de operações que eu faço, cada milissegundo é super importante para mim. O problema é que se eu coloco ali 12 milissegundos as vezes eu tenho o seguinte problema:
Exception in thread "main" java.util.ConcurrentModificationException
at java.util.HashMap$HashIterator.nextNode(HashMap.java:1429)
at java.util.HashMap$EntryIterator.next(HashMap.java:1463)
at java.util.HashMap$EntryIterator.next(HashMap.java:1461)
Eu gostaria de saber se ao invés de 15 milissegundos tem como descobrir o exato momento que a(s) thread(s) foram executadas.
Alguém com mais experiência pode me ajudar com isso?