Como desligar todos os executores ao sair de um aplicativo?
De acordo com o Java Concurrency na prática de Brian GoetzA JVM não pode sair até que todos os encadeamentos (nondaemon) tenham terminado, portanto, a falha ao encerrar um Executor pode impedir a saída da JVM.
Ou seja System.exit (0) não necessariamente funciona como esperado se houver Executors em volta. Parece necessário colocar algum tipo de
public void stop() { exec.shutdown() }
métodos para todas as classes que contêm executores e, em seguida, chamá-los quando o aplicativo está prestes a finalizar. Esta é a única maneira, ou existe algum tipo de atalho para desligar todos os executores?