Ir para conteúdo
Fórum Script Brasil
  • 0

Threads


flavio

Pergunta

Tenho duas threads. Uma delas realiza um cálculo (bem demorado). A outra cria uma barra de progresso (vai-e-vem) que deve durar enquanto a primeira thread estiver rodando.

Minha dúvida é: como saber quando a primeira thread acabou?

Usei o método isAlive(), mas ele tá retornando true mesmo quando a thread já não tem instrução alguma para executar!

Alguma sugestão?

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

Estranho, o isAlive() deveria funcionar:

public class Teste {
    public static void main(String[] args) {
        Thread th = new MyThread();
        th.start();
        while(th.isAlive()) Thread.yield();
        System.out.println("Thread is not alive anymore.");
    }
}

class MyThread extends Thread {
    public void run() {
        for(int i = 0; i < 1000; i++) {
            System.out.println(i); 
        }
    }
}

Tem certeza que a sua thread está sendo encerrada mesmo?

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...