Existe alguma forma de verificar se todas as threads criadas terminaram sua execução?
Verificar se tem Thread rodando
S
3 Respostas
T
O método “join” da classe Thread serve para esperar uma thread terminar.
O método “isAlive” checa se a thread ainda está viva.
S
Logo, teria que dar um join nas minhas threads para depois poder usar isAlive? Já conhecia os métodos mas queria ter certeza quanto ao uso.
T
Não; você pode chamar “isAlive” a qualquer momento.
Se você chamar “join” você espera até ela morrer (e aí “isAlive” vai retornar false mesmo) ou então se transcorrer um timeout (nesse caso faz sentido você chamar “isAlive”.)
A vantagem de você usar “join” é que isso não gasta CPU; ficar testando contra “isAlive” continuamente não é legal - no mínimo, você tem de dar alguns “Thread.sleep” para deixar as outras threads trabalharem.
Criado 6 de março de 2009
Ultima resposta 6 de mar. de 2009
Respostas 3
Participantes 2
Alura Sistemas operacionais: entenda seu conceito e suas funções Descubra o que são sistemas operacionais, suas funções e tipos. Aprenda tudo de forma clara e objetiva. Não perca tempo!
Casa do Codigo Orientacao a Objetos: Aprenda seus conceitos e suas... Por Thiago Leite e Carvalho — Casa do Codigo