Ainda não tem acesso? Estude com a gente! Matricule-se
Ainda não tem acesso? Estude com a gente! Matricule-se

Como fazer que Daemon Thread complete a execução

Testando a implementação de Daemon Thread notei que se ela for executada por último e dentro dela estiver executando Thread.sleep ela morre sem executar o restando do código da mesma.

A única solução que encontrei mas não sei se é a melhor foi contar quantas Threads ativas tenho e se o número for igual a 3, no meu caso não executo Thread.sleep. Existe outra maneira de corrigir esse problema?

Segue abaixo o código.

https://gist.github.com/denis-schimidt/a818d4576762271bddbc8f8b209925c5
1 resposta

Oi Felipe, tudo bem?

Se a JVM perceber que só existem threads Daemon rodando o Java Runtime encerrará a aplicação. Então a única forma de manter a execução da Daemon é se você não matar alguma thread principal.