Threads

4 respostas
S

ola eu estou usando java rmi e preciso de fazer um thread num client que esteja sempre a verificar mensagens novas ou seja é um thread que nunca deve morrer
ajuda
cumprimentos

4 Respostas

WendersonLP

Bom, faça um algorítmo dentro de uma função qualquer e chame essa função no método RUN da sua thread, e faça com que essa thread não seja utilizar por mais de uma função, e somente uma.

ViniGodoy

public class SuaThreadNova implements Runnable { public void run() { try { while (!Thread.interrupted()) { verificarMensagensNovas(); Thread.sleep(1000); //Verifica de 1 em 1 segundo } } catch (InterruptedException e) {} } }

Para inicializar:

Thread t = new Thread(new SuaThreadNova()); t.setName("Verificador de Mensagens"); t.setDaemon(true); //O java irá matar a aplicação caso só threads desse tipo sobrem t.start();

Para parar:

t.interrupt();
ViniGodoy

Só um comentário. É sempre bom fazer threads pararem no interrupt, mesmo que a principio esse método nunca seja chamado. Isso porque a VM lança um interrupt em todas as threads, quando você faz um System.exit(0). Fazendo assim, sua thread finaliza “graciosamente”, quando a aplicação está sendo encerrada.

S

obrigado vinigodi serviu perfeitamente para o que eu queria :smiley:

Criado 10 de janeiro de 2010
Ultima resposta 11 de jan. de 2010
Respostas 4
Participantes 3